Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi TApplicationEvents (https://www.delphipraxis.net/19391-tapplicationevents.html)

franktron 2. Apr 2004 09:34


TApplicationEvents
 
Wie kann ich am einfachsten herausfinden von welcher Form eine Exception kommt wenn die Komponenete auf der MainForm liegt

Bernhard Geyer 2. Apr 2004 10:36

Re: TApplicationEvents
 
AFAIK gar nicht. Wenn die Exception in TApplicationEvents ankommt sind alle entsprechenden Informationen schon verloren.

Hier bietet aber die Jedi Code Library eine Lösung an. Lade sie dir und schau dir die Beispiele StackTrackExample und FramesTrackExample an. Diese Beinhalten eine Lösung mit kompletten Aufrufstack bei Auftauchen einer Exception.

Hansa 2. Apr 2004 10:44

Re: TApplicationEvents
 
Sakura hat doch so was in der Richtung mal gemacht. Wenn die Compiler-Schalter richtig gesetzt sind wird sogar die Zeile angezeigt.

Bernhard Geyer 2. Apr 2004 10:50

Re: TApplicationEvents
 
Genau das macht auch das Jedi-Beispiel.
Ein Beispiel der Ausgaben der Demo-Programme:

Code:
Exception EAccessViolation: Zugriffsverletzung bei Adresse 00467759 in Modul 'FramesTrackExample.exe'. Schreiben von Adresse 00000000 (OS Exception)
  Exception occured at $00467759 (Module "FramesTrackDemoMain", Procedure "TForm1.Button1Click", Unit "FramesTrackDemoMain.pas", Line 125)
  Except frame-dump:
    Frame at $0012F634 (type: efkFinally)
      Code at $00467769
      Module "FramesTrackDemoMain", Procedure "TForm1.Button1Click", Unit "FramesTrackDemoMain.pas", Line 125
    Frame at $0012F97C (type: efkFinally)
      Code at $00440254
      Module "Controls", Procedure "TWinControl.MainWndProc", Unit "", Line 0
    Frame at $0012F988 (type: efkAnyException, handles exception)
      Handler at $00440275
      Module "Controls", Procedure "TWinControl.MainWndProc", Unit "", Line 0

franktron 2. Apr 2004 12:52

Re: TApplicationEvents
 
Das von der Jedi kenn ich ist zwar schön hat leider einen sehr grossen nachteil.
Noch einfacher kann ich es einem Hacken der die EXE decompelieren will nicht machen. :(

Bernhard Geyer 3. Apr 2004 11:55

Re: TApplicationEvents
 
Zitat:

Noch einfacher kann ich es einem Hacken der die EXE decompelieren will nicht machen
Diese Infos in de ausgeprägten Schönheit kommt nur (kann nur kommen) wenn auch entsprechend TD32-Debug-Infos in der Exe vorhanden sind. Und wenn Du die mitlieferst bist Du selbst schuld (vergrößert ja auch die Exe auch um die 3fache Menge). Und vermutlich basiert Sakura's Lösung auf die gleiche Mechanik.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz