Méthode IDebugClient ::AttachProcess (dbgeng.h)
La méthode AttachProcess connecte le moteur de débogueur à un processus en mode utilisateur.
Syntaxe
HRESULT AttachProcess(
[in] ULONG64 Server,
[in] ULONG ProcessId,
[in] ULONG AttachFlags
);
Paramètres
[in] Server
Spécifie le serveur de processus à utiliser pour l’attacher au processus. Si le serveur est égal à zéro, le moteur se connecte à un processus local sans utiliser de serveur de processus.
[in] ProcessId
Spécifie l’ID de processus du processus cible auquel le débogueur doit attacher.
[in] AttachFlags
Spécifie les indicateurs qui contrôlent la façon dont le débogueur s’attache au processus cible. Pour plus d’informations sur ces indicateurs, consultez Remarques.
Valeur retournée
Cette méthode peut également retourner des valeurs d’erreur. Pour plus d’informations, consultez Valeurs de retour .
Code de retour | Description |
---|---|
|
La méthode a réussi. |
Remarques
Cette méthode est disponible uniquement pour le débogage en mode utilisateur actif.
Les indicateurs de bits DEBUG_ATTACH_XXX contrôlent la façon dont le moteur du débogueur s’attache à un processus en mode utilisateur. Pour connaître les options DEBUG_ATTACH_XXX utilisées lors de l’attachement à une cible de noyau, consultez AttachKernel.
Le tableau suivant décrit les valeurs d’indicateur possibles.
Constant | Description |
---|---|
DEBUG_ATTACH_NONINVASIVE |
Attacher à la cible de manière non invasive. Pour plus d’informations sur le débogage non invasif, consultez Débogage non invasif (mode utilisateur).
Si cet indicateur est défini, les indicateurs DEBUG_ATTACH_EXISTING, DEBUG_ATTACH_INVASIVE_NO_INITIAL_BREAK et DEBUG_ATTACH_INVASIVE_RESUME_PROCESS ne doivent pas être définis. |
DEBUG_ATTACH_EXISTING |
Attachez à nouveau une application à laquelle un débogueur a déjà attaché (et peut-être abandonné). Pour plus d’informations sur la ré-attachement à des cibles, consultez Ré-attachement à l’application cible.
Si cet indicateur est défini, les autres indicateurs DEBUG_ATTACH_XXX ne doivent pas être définis. |
DEBUG_ATTACH_NONINVASIVE_NO_SUSPEND |
Ne suspendez pas les threads de la cible lors de l’attachement de manière non invasive.
Si cet indicateur est défini, l’indicateur DEBUG_ATTACH_NONINVASIVE doit également être défini. |
DEBUG_ATTACH_INVASIVE_NO_INITIAL_BREAK |
(Windows XP et versions ultérieures) Ne demandez pas d’introduction initiale lors de l’attachement à la cible.
Si cet indicateur est défini, les indicateurs DEBUG_ATTACH_NONINVASIVE et DEBUG_ATTACH_EXISTING ne doivent pas être définis. |
DEBUG_ATTACH_INVASIVE_RESUME_PROCESS | Si cet indicateur est défini, les indicateurs DEBUG_ATTACH_NONINVASIVE et DEBUG_ATTACH_EXISTING ne doivent pas être définis. |
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | dbgeng.h (inclure Dbgeng.h) |