Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi "Profiler" für Programmablauf (https://www.delphipraxis.net/147988-profiler-fuer-programmablauf.html)

haentschman 20. Feb 2010 07:36


"Profiler" für Programmablauf
 
Guten Morgen alle... :hi:

ich hatte eben den Beitrag über den Profiler für die Prozessorlast gelesen. Da kam mir der Gedanke: Gibt es so etwas auch um den Programmablauf mitzuloggen ?

Quasi:
- Buttin 1 gedückt
- Combobox change etc.

Grund: Ich habe bei einer Kundeninstallation eine Fehlermeldung, die ich nicht reproduzieren kann. Die Info´s des Benutzers sind eher dürftig.

Aus meinem Fehlerlog:

Datum: 17.02.2010 08:27:55
Computername: 9S5PK2J
Betriebssystem: Microsoft Windows XP
ServicePack: Service Pack 3
Fehlerbezeichnung: Ein unbekannter Fehler ist aufgetreten.
interner Fehlercode: E999
Fehlerklasse:EInvalidOperation
Fehlerobjekt: TTabSheet
Systemmeldung: Deaktiviertes oder unsichtbares Fenster kann den Fokus nicht erhalten

...TabSheets gibt es reichlich. Ich habe sämtliche Varianten der Benutzung durchprobiert. Wie die Sekretöse das hinkriegt weiß ich nicht.

Jetzt habe ich schon begonnen, die Aufrufe jeder einzelnen Procedure mitzuloggen. Um das zu implementieren bin ich noch Tage beschäftigt :(

Deshalb der Wunsch nach einer einfach zu implemetierenden Variante.

Habt ihr eine Idee ?

Danke :hi:

s.h.a.r.k 20. Feb 2010 08:09

Re: "Profiler" für Programmablauf
 
Soweit ich das weiß, gibt es nur die Möglichkeit das selbst zu implementieren, wobei ich mich hierbei echt gerne berichtigen lasse :)

Code:
Deaktiviertes oder unsichtbares Fenster kann den Fokus nicht erhalten
Den Fehler hatte ich meist wenn ich ein SetFocus() auf ein unsichtbares Objekt gemacht hatte.

schöni 20. Feb 2010 08:13

Re: "Profiler" für Programmablauf
 
Hallo,

Ein Profiler ist hier, aber für das vorliegende Problem ist eher ein Debugger wichtig. Am einfachsten, wenn auch schrecklich zeitaufwendig, in der Delphi IDE -> F8 für Prozedurschritt und wenn die Exception auftritt mit F7 weiter -> Einzelschritt.

Der Profiler spürt dagegen Performancebremsen auf. Ob auch der Programmablauf mitzuloggen geht, weiß ich leider nicht.

haentschman 20. Feb 2010 08:14

Re: "Profiler" für Programmablauf
 
Danke für deine Antwort...

was den Fehler betrifft weiß ich was ihn auslöst. Nur egal was ich anstelle, ich bekomme ihn nicht zu Gesicht. Mir geht es um den Ablauf, damit ich herausfinden kann wo das auftritt und was zuvor in welcher Reihenfolge getan wurde.

:hi:

jaenicke 20. Feb 2010 08:25

Re: "Profiler" für Programmablauf
 
Kennst du madexcept?

Das speichert zwar nicht den Ablauf, aber u.a. den Stacktrace usw. und sendet den z.B. per Mail. Die Infos, die das ausliest, reichen meistens um den Fehler gut einzugrenzen, wenn es nicht gerade ein Speicherproblem oder sowas ist.

haentschman 21. Feb 2010 18:07

Re: "Profiler" für Programmablauf
 
Soooo....

ich hab mir dann mal madExcept zugelegt. Der Aufruf Stack kommt dem ganzen sehr nahe und ist brauchbar.

:hi:

implementation 21. Feb 2010 18:12

Re: "Profiler" für Programmablauf
 
Gut verwenden ließen sich hier Aspekte, nur leider gibt es die bisher nur unter AspectJ.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:32 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