Hi
ich habe ein Problem eine schreibgeschützte Datei zu überschreiben.
Wenn ich den Codeablauf in Delphi mit Haltepunkten teste funktioniert es nur wenn ich
das Programm dann "loslasse" bekomme ich eine Fehler-Meldung, das die Datei nicht gespeichert werden kann.
Was auch klar wird, da der Schreibschutz noch immer gesetzt ist,
es scheint mir als ob WinXP die Anweisungen nicht so schnell durchführen kannn,
wie das Delphiprogramm die Anweisungen gibt.
Delphi-Quellcode:
if form6.neuesverzeichnisselect6=false then //neues Verzeichnis eigeben?-Nein
begin
if FileExists(squestverzeichnis4+'\'+squestdateiname4) then //überprüfen ob im alten Verzeichnis die Datei existiert
begin
fileex:=true;
if (FileGetAttr(squestverzeichnis4+'\'+squestdateiname4) and faReadOnly) >= 0 then
begin
FileSetAttr(squestverzeichnis4+'\'+squestdateiname4, FileGetAttr(squestverzeichnis4+'\'+squestdateiname4) xor faReadOnly);
end;
deletefile(squestverzeichnis4+'\'+squestdateiname4);
end;
memouebergabeneu.Lines.SaveToFile(squestverzeichnis4+'\'+squestdateiname4);
end;
Lösung ?