@DeddyH:
Hm stimmt. Aber mir fällt grad auf, dass sich an den Block noch was anschließt:
Delphi-Quellcode:
if Assigned(aFStream) then
Try
...
Finally
aFStream.free
End;
Also das free`en im
Exception-Teil, soll im Fehlerfall aufgerufen werden.
Andererseits: in deinem Code wird aFStream doch auch nicht freigegeben, wenn eine
Exception auftritt.
EDIT:
Ok hab es jetzt so gelöst:
Delphi-Quellcode:
aFStream:=
nil;
aSStream:=
nil;
try
try
FFilePath:= dlgOpenSQL.FileName;
aFStream:= TFileStream.Create(FFilePath,fmOpenRead);
aSStream:= TStringStream.Create(aStr);
if Assigned(aFStream)
then
...
finally
aFStream.free;
aSStream.free;
end;
except
on e:
Exception do
MessageDlg('
Fehler beim Laden der Datei!'#13#10+e.
Message,mtError,[mbOk],0);
end;
Danke für den Denkanstoß
edit 2&3: Code berichtigt.