Hallo,
ich hoffe, ich habe die richtige Rubrik gewählt.
Mein Programm soll Daten laden. Die Datei wird mit dem OpenDialog ausgewählt.
Das klappt nun aber in der
IDE (Delphi 6) nicht mehr, stattdessen erhalte ich eine Fehlermeldung (EExternalException).
Wenn ich das Programm direkt unter Windows starte, also ohne
IDE), läuft alles wie es soll.
Was mache ich verkehrt?
hier wird die Routine aufgerufen:
Delphi-Quellcode:
FileSelected := false;
ReadBestellungFromStream;
if FileSelected then
Der Cursor steht nach der Fehlermeldung in der letzten Zeile.
Hier ist die Routine mit dem OpenDialog:
Delphi-Quellcode:
procedure TForm1.ReadBestellungFromStream;
Type TZeile = string[255];
var MyStream : TFileStream;
MyFileName : string;
zeile : TZeile;
i : integer;
begin
MeinDir := ExtractFilePath(Application.ExeName);
OpenDialog1.InitialDir := MeinDir;
if OpenDialog1.Execute then
begin
MyFileName := Opendialog1.FileName;
try
MyStream := TFileStream.Create(MyFileName, fmOpenRead or fmShareDenyWrite);
except
ShowMessage('Fehler beim Öffnen der Datei!');
end;
try
With MyStream do
begin
Position := 0;
ReadBuffer(BestellHeader, SizeOf(TBestellHeader));
SetLength(Bestellung, BestellHeader.AnzahlArtikel);
for i := 0 to High(Bestellung) do
begin
ReadBuffer(Bestellung[i], SizeOf(TBestellung));
end;
MemoInhalt.Clear;
for i := 1 to BestellHeader.MemoLines do
begin
ReadBuffer(Zeile, SizeOf(TZeile));
MemoInhalt.Append(zeile);
end;
FileSelected := true;
end; // with MyStream do...
finally
MyStream.Free;
end; // try / finally...
end; // if OpenDialog1...
end;
Schon mal vielen Dank für Eure Mühe.
Thomas
[edit=Matze][code]- durch [delphi]-Tags ersetzt. MfG Matze[/edit]