lorusinaqua hat folgendes geschrieben : |
Hallo,
ich bin leider noch Anfänger in Delphi und hab deshalb nicht wirklich viel drauf.
Ich schreibe zur Zeit ein Programm, dessen Daten in einer .txt-Datei gespeichert werden.
Da dies ein Test ist der von mehreren Nutzern gleichzeitig durchgeführt wird kann es zu Komplikationen beim
schreiben dieser Daten kommen, wenn die Nutzer zufällig genau im selben Moment mit dem Programm fertig sind.
Kann man dies i.wie "umgehen bzw. verhindern?? |
Hallo lorusinaqua, folgenden Code kannst Du wie folgt verwenden, bzw. anpassen.
1. Du hast zentrales File, in das Du schreiben willst.
2. Du erstellst die Daten für den Test im Memory, oder in lokaler Temp Datei.
3. Ist der Test lokal fertig bearbeitet, versuchst du die Datei exclusive zu öffnen,
sollte dies nicht gehen, weil gerade von anderem User geöffnet
solange versuchen bis das Abspeichern funktioniert.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| procedure WriteToFile; var FileStream: TFileStream; begin try FileStream := TFileStream.Create('c:\test.txt', fmOpenReadWrite or fmShareExclusive); FileStream.Write(DieTestDaten); FileStream.Free; except WriteToFile; end; end; |
lg. Astat