OVH Cloud OVH Cloud

creation d'un minidebugger

11 réponses
Avatar
ouech
salut,

j'ai un petit probleme avec le mini debugger que je code. j'ai lu a peu
pres toute
la msdn sur le sujet mais je n'ai pas pu le resoudre.

ma boucle de debug est basee sur WaitForDebugEvent et ContinueDebugEvent
et ne
fait qu'imprimer les differents evenements ou exceptions. Ca marche tres
bien
lorsque je m'attache au process avec DebugActiveProcess mais avec certains
programmes (bizarrement pas tous...) lorsque je cree moi-meme le processus,
tout commence normalement mais apres quelques evenements je recois des
exceptions en continu, avec mon cpu a 100% et le programme en cours de
debug
est fige.

je pense que c'est la facon dont je cree le process etant donne que ca
marche
quand je m'y attache.

Je derive une classe de CWinThread, je la cree avec un constructeur public
redefini et j'appelle sa mathode CreateThread. Je cree le process (ou m'y
attache)
dans InitInstance et ma boucle de debug est dans la methode Run.

mon code pour creer le process :

STARTUPINFOsInfos;

bzero((void *)&sInfos, sizeof(sInfos));;
CString dir = params->path;
string tmp = params->path + " " + params->args;
dir.Replace(params->file, NULL);
if (!CreateProcess(NULL, (LPTSTR) tmp.c_str(),
NULL, NULL, FALSE, DEBUG_PROCESS,
NULL, dir, &sInfos, &pInfos))

merci pour votre aide,

--
lucas

1 réponse

1 2
Avatar
AMcD®
GG wrote:

Moi non , mais pour une fois chuis d'accord.



Ha, et à quel sujet ?

PS : Merci pour le "pour une fois" :-)

--
AMcD®

http://arnold.mcdonald.free.fr/
1 2