Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#2

AW: Konsolenanwendung und raise einer Exception

  Alt 30. Okt 2012, 13:36
Kuze Antwort: Ja.

In der VCL ist in der Message-Loop, also da wo z.B. eine Button-Click-Methode aufgerufen wird, wenn man auf 'nen Button klickt, ein Try-Except vorhanden, welches dieses abfängt und die Exception-MessageBox anzeigt.
(das erkennt man ganz schnell, wenn man nicht TThread verwendet, im Thread eine Exception auftritt und gleich das ganze Programm abraucht, wenn man das nicht abfängt)

Darum sollte man mindestens in der DPR den gesamten Code mit sowas Ähnlichem umschließen.
Delphi-Quellcode:
try
  ... //dein code
except
  on E: Exception do begin
    WriteLn;
    WriteLn(E.ClassName, ': ', E.Message);
    WriteLn;
    WriteLn('Beenden mit [Enter]');
    ReadLn;
  end;
end;
(in neueren Delphis ist sowas auch direkt gleich in einer neu angelegten Consolenanwendung enthalten, bzw. wurde da gleich in die DPR eingefügt)

[edit]
siehe
http://www.delphipraxis.net/171133-p...nprogramm.html
$2B or not $2B

Geändert von himitsu (30. Okt 2012 um 13:44 Uhr)
  Mit Zitat antworten Zitat