Autor Beitrag
jome
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 29

Win 2000, XP, VISTA, WIN 7
Delphi 4,5, 2006 Pro., 2007 Pro., Delphi XE
BeitragVerfasst: Fr 20.02.09 12:56 
Hallo,

bei mir tritt ein eigenartiger Effekt auf:

Das Abspeichern von etwa 10 Strings in eine Ini (TIniFile) führt auf einer externen Platte (LAN Netzlaufwerk) zu Schreibfehlern. Windows meldet "Es konnten nicht alle Datei für die Datei xyz.ini gespeichert werden. Die Daten gingen verloren. Mögliche Ursache könnten Computerhardware ... bla"

Ich habe dies auf zwei baugleichen NAS Laufwerken getestet (einmal als FAT32 einmal als NTFS formatiert) geprüft. Bei beiden tritt der selbe Fehler auf.

Habt Ihr sowas schon mal gehabt?

Ich habe auch TMemIni versucht, ohne Erfolg. Auf einem langsamen USB Stick gibt es kein Problem.

Gruß
Jome
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Fr 20.02.09 13:01 
Das hatte ich bisher nicht. Die Fehlermeldung schon, aber da war das Laufwerksgehäuse defekt. Aus anderen Programmen funktioniert alles?
Die Netzwerkverbindung macht sonst auch keinerlei Probleme?

Auch wenn ich nicht wüsste wie das so schief laufen kann: Wie sieht denn der Code aus?
jome Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 29

Win 2000, XP, VISTA, WIN 7
Delphi 4,5, 2006 Pro., 2007 Pro., Delphi XE
BeitragVerfasst: Mo 23.02.09 11:18 
Hallo!

Das Laufwerk (die Laufwerke) machen keine Probleme im normalen Windowsbetrieb.

Der Aufruf lautet wie üblich:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
USES
 Inifiles...;

Procedure Save;
 Ini : TInifile;
 Filenname : String;
begin

 Filename:='\\Fileserver\Ausgang\MyTest.ini'
 Ini:=TInifile.create(Filename);
 Ini.WriteString('Test','MeinTest','Teststring');
 Ini.free;
end;


Sobald ich mehr als 3 x WriteString aufrufe, wird Schrott in die Ini geschrieben und Windows meldet sich mit o.g. Fehlermeldung. Auf der lokalen Platte ist aber alles perfekt, wie gewohnt.

Irgendwelche Ideen?

Gruß
Jome
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8554
Erhaltene Danke: 481

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Mo 23.02.09 11:24 
Versuch mal, ob sich das über eine TMemInifile lösen lässt. Am Ende dann Ini.UpdateFile nicht vergessen, damit die Änderungen geschrieben werden.

_________________
We are, we were and will not be.