Ok. Das hab ich mal probiert.
Also um den Fehler zu erzeugen rufe ich mit einer Applikation die Datei auf. Und zwar so ...
Delphi-Quellcode:
Unit Unit4;
Interface
Uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;
Type TForm1 =
class(TForm)
Procedure FormCreate(Sender: TObject);
Procedure FormDestroy(Sender: TObject);
Private
FH: THandle;
End;
Var Form1: TForm1;
Implementation
{$R *.dfm}
Procedure TForm1.FormCreate(Sender: TObject);
Begin
FH := CreateFile(PChar(ExtractFilePath(ParamStr(0)) + '
Project3.txt'), GENERIC_READ
or GENERIC_WRITE,
FILE_SHARE_READ,
nil, OPEN_ALWAYS, 0, 0);
If FH = INVALID_HANDLE_VALUE
Then Raise Exception.Create('
Can''
t open the file.');
SetFilePointer(FH, 4,
nil, FILE_BEGIN);
SetEndOfFile(FH);
End;
Und mit meiner anderen Applikation versuche ich dann das hier:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
sl: TStringList;
Pfad: String;
Stream : TFileStream;
begin
Pfad := 'c:\Dokumente und Einstellungen\bottd\Desktop\Datei bereits verwendet\Datei bereits verwendet\Project3.txt';
if FileExists(Pfad) then
begin
//sl:= TStringList.Create;
try
//sl.LoadFromFile(Pfad);
Stream := TFileStream.Create(Pfad,fmOpenRead);
ShowMessage('Öffnen hat geklappt');
finally
end;
end;
end;
Die Fehlermeldung kommt aber immernoch. Also, es hat sich somit nichts geändert. Woran liegt das?