| Autor |
Beitrag |
Vriina
Hält's aus hier
Beiträge: 4
Win 98, WinNT, Win 2000, WinXP
D5 Prof. / D2005
|
Verfasst: Di 07.10.08 11:03
Mein Programm erstellt zur Übergabe an ein anderes System aus einem Artikelstamm drei ASCII-Dateien. Wenn das Programm die Dateien auf dem Server (NT4) erstellt, so erscheint nach rund 10'000 Einträgen in den Ausgabedatein die Fehlermeldung E/A-Fehler 32.
Wenn die Dateien lokal erstellt werden, so läuft das Programm durch und erstellt problemlos über 100'000 Einträge.
Auszug aus dem Code:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35:
| Procedure xy var OutputDatei : TextFile; begin
sDateiName:=DEPfad.Text+'1\bac-art.asc'; AssignFile(OutputDatei, sDateiName); Append(OutputDatei);
Writeln(OutputDatei, sAusgabe); CloseFile(OutputDatei);
sDateiName:=DEPfad.Text+'1\bac-ean.asc'; AssignFile(OutputDatei, sDateiName); Append(OutputDatei);
Writeln(OutputDatei, sAusgabe); CloseFile(OutputDatei);
sDateiName:=DEPfad.Text+'1\bac-mst.asc'; AssignFile(OutputDatei, sDateiName); Append(OutputDatei);
Writeln(OutputDatei, sAusgabe); CloseFile(OutputDatei);
|
An was könnte dieses Problem liegen? Ist der Server zu langsam, sodass er sich bei den vielen Assign, Append, CloseFile verheddert?
Besten Dank für ein Antwort.
Moderiert von Narses: Delphi-Tags hinzugefügtModeriert von Narses: Topic aus Sonstiges (Delphi) verschoben am Di 07.10.2008 um 12:54
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 07.10.08 11:36
Guck doch einfach mal in der Hilfe, was E/A Fehler 32 bedeutet...
|
|
Knulli
      
Beiträge: 116
Erhaltene Danke: 2
Win2k, Win7, Win10
D5, D2005, D2006, D2007, D10.4.2
|
Verfasst: Di 07.10.08 11:42
Wie lang sind denn die Dateien, wenn er abbricht?
> 2 GB?
Da hat NT4 glaub ich Probleme mit.
|
|
Vriina 
Hält's aus hier
Beiträge: 4
Win 98, WinNT, Win 2000, WinXP
D5 Prof. / D2005
|
Verfasst: Di 07.10.08 12:49
Luckie hat folgendes geschrieben : | | Guck doch einfach mal in der Hilfe, was E/A Fehler 32 bedeutet... |
Ich weiss schon, was der E/A-32 bedeutet, aber ich weiss nicht, warum er bei der Verarbeitung auf dem Server auftritt, lokal jedoch nicht.
|
|
Vriina 
Hält's aus hier
Beiträge: 4
Win 98, WinNT, Win 2000, WinXP
D5 Prof. / D2005
|
Verfasst: Di 07.10.08 12:50
Knulli hat folgendes geschrieben : | Wie lang sind denn die Dateien, wenn er abbricht?
> 2 GB?
Da hat NT4 glaub ich Probleme mit. |
Die Dateigrössen bewegen sich im Mega-Bereich, weit entfernt von Giga.
|
|
Knulli
      
Beiträge: 116
Erhaltene Danke: 2
Win2k, Win7, Win10
D5, D2005, D2006, D2007, D10.4.2
|
Verfasst: Di 07.10.08 13:01
Hast Du mal auf einem anderen Server versucht zu schreiben? Irgendeine Freigabe im Netzwerk meine ich, die NICHT von einem NT4 Server stammt.
Wie sieht denn der Pfad zu deiner Datei aus?
Versuchs auch mal mit TFileStream oder mit API-Funktionen. Gibts dann auch die Probleme?
Knulli
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Di 07.10.08 14:06
Irgendweswegen ist die Datei jedenfalls noch offen, die Frage ist doch, wenn du so oft hintereinander in die gleichen (?) Dateien schreibst, ob du die nicht geöffnet lassen kannst. Außer für ein LogFile muss man die ja nicht jedesmal wieder schließen, das dauert ja dann extra lange.
Die andere ist, dass du vor dem Schließen versuchen könntest ggf. noch nicht geschriebene Daten per Flush (irgendwie so ähnlich müsste der Befehl heißen) explizit zu schreiben. Das sollte bei CloseFile zwar auch passieren, aber vielleicht wird da was zwischengespeichert. (Das ist aber nur eine Vermutung.)
|
|
Vriina 
Hält's aus hier
Beiträge: 4
Win 98, WinNT, Win 2000, WinXP
D5 Prof. / D2005
|
Verfasst: Di 07.10.08 15:35
Hallo zusammen
Das Problem ist gelöst - der Grund: die Spiegelung auf dem NT4-Server funktionierte nicht mehr richtig. Nachdem wir sie neu eingerichtet haben, konnten wir unterdessen die Verarbeitung mehrere Male ohne Probleme durchführen.
Herzlichen Dank für Eure Hilfe
Gruss Vriina
|
|
|