IDebugControl3 ::Execute, méthode (dbgeng.h)

La méthode Execute exécute les commandes de débogueur spécifiées.

Syntaxe

HRESULT Execute(
  [in] ULONG OutputControl,
  [in] PCSTR Command,
  [in] ULONG Flags
);

Paramètres

[in] OutputControl

Spécifie le contrôle de sortie à utiliser lors de l’exécution de la commande. Pour connaître les valeurs possibles, consultez DEBUG_OUTCTL_XXX. Pour plus d’informations sur la sortie, consultez Entrée et Sortie.

[in] Command

Spécifie la chaîne de commande à exécuter. La commande est interprétée comme celles tapées dans une fenêtre de commande du débogueur. Cette chaîne de commande peut contenir plusieurs commandes que le moteur doit exécuter. Pour plus d’informations de référence, consultez Commandes du débogueur .

[in] Flags

Spécifie un champ de bits d’options d’exécution pour la commande . Les options par défaut sont de journaliser la commande, mais de ne pas l’envoyer à la sortie. Le tableau suivant répertorie les bits qui peuvent être définis.

Valeur Description
DEBUG_EXECUTE_ECHO La chaîne de commande est envoyée à la sortie.
DEBUG_EXECUTE_NOT_LOGGED La chaîne de commande n’est pas journalisée. Cette valeur est remplacée par DEBUG_EXECUTE_ECHO.
DEBUG_EXECUTE_NO_REPEAT Si Command est une chaîne vide, ne répétez pas la dernière commande et n’enregistrez pas la chaîne de commande actuelle pour une exécution répétée ultérieurement.

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
S_OK
La méthode a réussi.

Remarques

Cette méthode exécute la chaîne de commande donnée. Si la chaîne comporte plusieurs commandes, cette méthode ne retourne pas tant que toutes les commandes n’ont pas été exécutées. Si la séquence de commandes implique l’attente de l’exécution de la cible, cette méthode peut prendre un temps arbitraire.

Note Il est important de comprendre ce que signifie l’exécution d’une commande d’étape. Une commande d’étape lance une action pas à pas, mais n’attend pas la fin de la procédure pas à pas. Par exemple, supposons que vous appeliez IDebugControl ::Execute et que vous transmettiez une chaîne de commande qui contient la commande unique pct. La commande pct lance une étape à l’appel suivant ou à l’instruction de retour, mais pct termine son exécution avant que le pas à pas n’a lieu. Par conséquent, IDebugControl ::Execute retourne avant le pas à pas. Les commandes trace et go se comportent de la même manière. Parmi les exemples de commandes qui ont ce comportement, citons g, gh, ta, tb, tct, pa et pc.
 

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête dbgeng.h (inclure Dbgeng.h)

Voir aussi

ExecuteCommandFile

IDebugControl

IDebugControl2

IDebugControl3