Partager via


IDebugControl ::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 d’entrée et de 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 pour que le moteur s’exécute. Consultez commandes du débogueur pour obtenir la référence de commande.

[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. Cela est remplacé par DEBUG_EXECUTE_ECHO.
DEBUG_EXECUTE_NO_REPEAT Si commande 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 répéter l’exécution ultérieurement.

Valeur de retour

Cette méthode peut également retourner des valeurs d’erreur. Pour plus d’informations, consultez valeurs de retour.

Retourner le code 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 a 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 délai arbitraire.

Remarque Il est important de comprendre ce qu’il signifie pour qu’une commande d’étape s’exécute. Une commande d’étape lance une action pas à pas, mais n’attend pas la fin de l’exécution de l’étape. Par exemple, supposons que vous appelez IDebugControl ::Execute et transmettez 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 la mise à pas. Par conséquent, IDebugControl ::Execute retourne avant la mise à pas à pas. Les commandes trace et go se comportent de la même façon. Des exemples de commandes qui ont ce comportement incluent g, gh, ta, to, tct, paet pc.
 

Exigences

Exigence Valeur
plateforme cible Bureau
d’en-tête dbgeng.h (include Dbgeng.h)

Voir aussi

ExecuteCommandFile

IDebugControl

IDebugControl2

IDebugControl3