Bonjour à tous,
J'aurais aimé savoir s'il était possible de connaître l'appelant d'une fonction ?
Ceci dans le but de me faire un fichier log et de voir les performances de mon application.
Merci d'avance.
(C++ Builder XE2)
Bonjour à tous,
J'aurais aimé savoir s'il était possible de connaître l'appelant d'une fonction ?
Ceci dans le but de me faire un fichier log et de voir les performances de mon application.
Merci d'avance.
(C++ Builder XE2)
Eurekalog doit le permettre !
Peut-être en trichant avec les assertions Delphi couple à StackTrace
tu dois pouvoir faire
sinon une MACRO
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 void LogCallStack() { try { Abort(); // ou throw Exception(); } catch(const Exception &e) { WrtteLog(e.StackTrace); // bon ça contiendra toujours LogCallStack } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #define LogCallStack() \ try \ { \ Abort(); \ } \ catch(const Exception &e) \ { \ WrtteLog(e.StackTrace); \ } \
La pile d'appels est accessible en débogage mais c'est souvent pénible à lire !
AQTime fourni avec XE2 n'est-il pas conçu pour cela ?
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !
L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager