Hi,
ich wüßte gerne ob es eine Möglichkeit gibt den Inhalt eines txt-Files zu ändern auch wenn ich dieses File z.B. in Word aufhabe und mir Word den Zugriff auf diese Datei verweigert. Wenn ja wie mach ich das? Möchte eine Datei die ich für die Übergabe von Daten benutzen muß im Temp-Verzeichnis von Windows ändern. Und zwar zwingend, auch wenn eine andere Anwendung wie Word diese sperrt.
Bis jetzt habe ich nur ne Notlösung damit es wenigstens mal so geht:
Delphi-Quellcode:
function GetTempFolder: AnsiString;
var
Buf: array[0..MAX_PATH] of AnsiChar;
begin
GetTempPath(SizeOf(Buf), @Buf);
Result := Buf;
if Result <> '' then if AnsiLastChar(Result)^ <> '\' then Result := Result + '\';
end;
procedure Speichern(Text: String);
var
Datei: Integer;
Buffer: PChar;
F: String;
begin
F := GetTempFolder + 'paddydat';
Datei := FileCreate(F, fmCreate);
if Datei > 0 then
begin
Buffer := PChar(Text);
FileSeek(Datei, 0, 0);
FileWrite(Datei, Buffer^, Length(Text));
FileClose(Datei);
end
else Application.MessageBox('Datei kann nicht erstellt werden!' + #13 + #13 +
'Eine andere Anwendung hat die Datei geöffnet' + #13 +
'und blockiert den Schreibzugriff!' + #13 + #13 +
'Schliessen Sie die Anwendung welche die Datei' + #13 +
'geöffnet hat und versuchen Sie es erneut!', 'Problem',48);
end;
1000 Dank im Voraus