PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : TP 7 nur eine kleine Frage



Nafets
22.12.2005, 22:25
Also ich bau grad ein Multiplayerstrategiespiel unter TP7 nun zu meiner Frage:
Können zwei Pascalprogramme auf die gleiche Textdatei zugreifen wenn mann die Zugriffzeiten per Systemuhr berechnet. Ich mein das in etwas so:
Spieler 1 startet Spiel (Computer1)
Spieler 2 startet Spiel (Computer2)
Spieler 1 greift auf Textdatei zu so lange Sekunden unter 30 (Computer1)
Spieler 2 greift auf Textdatei zu so lange Sekunden über 30 (Computer2)

wie man auf ne Textdatei zugreift weiß ich mir gehts nur um ne Bantwortung der Frage mit Ja oder nein. Ok ein bisschen ausführlicher kanns schon sein brauch aber keinen Quellcode! Grund warum ich das wissen will ist da ich Zuhause kein Netzwerk zum Testen hab und ich das nach den Ferien fertig haben muss. Die Datei befindet sich entweder auf Netzwerkfestplatte oder freigegeben Ordner (weiß ich noch nicht) bitte für beide Varainten antworten falls es unterschiede gibt

Adieu Nafets

Crash-Override
22.12.2005, 22:36
Ja, aber das Konzept wird nicht gehen, da man unter TP nicht auf Windows-Shares zugreifen kann.

Nafets
23.12.2005, 00:02
Aber bei Netzwrklaufwerken(Servern ghets?) wenn ja reicht mir das voll und ganz!

Ineluki
23.12.2005, 01:54
TP7 erzeugt nur 16 bit DOS Programme. Das heisst auch, du hast nur Dateinamen und Pfade im Format 8.3 und eine max. Laenge von 256 Zeichen. Netzwerke unter Dos sind ein graus, und ich kenne keinen Weg, wie man windows Netzwerkpfade problemlos fuer Dos freigibt, ausser ihnen einen expliziten laufwerksbuchstaben zuzuweisen.

Dennoch verstehe ich nicht ganz, was dein problem ist. Der Lese und schreibzugriff unter TP7 ist doch nicht zeitlich synchronisiert. falls du versuchen willst, ueber eine textdatei zu synchronisieren, kann ich nur mit dem Kopf schuetteln. Doch wenn du es unbedingt so machen willst, waere wohl die einfachste moeglichkeit, nach jeder aktion den dateistream zu flushen und ueber das dateiaenderungsdatumattribut zu gehen ...

Alternativ koenntest du ja auch in deiner Datei irgendwo ein Datenflag setzen, was aussagt, ob gerade ein anderes Programm in der Datei schreibt, wenn es dir darum geht, nicht ausversehen aktuelle daten zu ueberschreiben.

beschreibe mal genauer, was du machen willst. Irgendwie weiss ich nicht, was du sonst mit deinen warten beim schreiben bezwecken willst

Ueber die Systemuhr kannst du auch vergessen, etwas zu synchronisieren, weil die bei zwei verschiedenen computern ja auch nicht synchron gehen.

Wenn du aber nur wissen wolltest, ob mehere Programme gleichzeitig in ein und der selben datei lesen und schreiben koennen, dann kann ich das mit ja bestaetigen. Dafuer musst du auch den zugriff nicht synchroniseren, wenn dir egal ist, ob sich daten eventuell gegenseitig ueberschreiben

Nafets
23.12.2005, 10:21
Alternativ koenntest du ja auch in deiner Datei irgendwo ein Datenflag setzen, was aussagt, ob gerade ein anderes Programm in der Datei schreibt, wenn es dir darum geht, nicht ausversehen aktuelle daten zu ueberschreiben.


Darum gehts mir und darum das ich über die Textdatei festlegen (also auch lese/schreib zugriff) kann wer wann dran ist.


Die Systemuhr ist übrigens Synchron da die bei dem Netzwerk wo bei mein Spiel laufen soll vom Server eingestellt werden kann und wird und somit idnetisch ist.

So hoffe das war jetzt genau genug.

~cu Nafets~