je suis en train d'écrire un petit programme qui fait de l'injection de
DLL et de l'API hooking pour debuguer un programme. J'ai réussi à
surcharger les fonctions que je veux (pour l'instant malloc/free, et les
fonctions équivalentes de l'api win32).

maintenant, je voudrais pouvoir savoir à quelle ligne de quel fichier ces
fonctions (i.e. malloc() par exemple) sont appelées, ainsi que les
fonctions qui les appellent. Donc avoir quelque chose comme:

fichier1.c (150) malloc()
fichier2.c (23) allocation()
main.c (45) main()

et ceci uniquement pour les fonctions que je surcharge.

Je cible Windows >= XP. Apparemment, on peut utiliser l'api de dbghelp
pour ça. Je précise que je ne connais pas du tout cette api.

J'ai trouvé ce code sur codeproject :

http://www.codeproject.com/Articles/...-the-callstack

mais il trace absolument tout ce qui appelé à partir de main().

Ce que je voudrais savoir est si on peut "remonter" la callstack à partir de
mon symbole (malloc, par exemple) avec cette api. Et si oui, un petit
exemple en pseudo code serait le bienvenu

merci