Freigeben über


IDebugControl3::Execute-Methode (dbgeng.h)

Die Execute-Methode führt die angegebenen Debuggerbefehle aus.

Syntax

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

Parameter

[in] OutputControl

Gibt das Ausgabesteuerelement an, das beim Ausführen des Befehls verwendet werden soll. Mögliche Werte finden Sie unter DEBUG_OUTCTL_XXX. Weitere Informationen zur Ausgabe finden Sie unter Eingabe und Ausgabe.

[in] Command

Gibt die auszuführende Befehlszeichenfolge an. Der Befehl wird wie in einem Debuggerbefehlsfenster eingegeben interpretiert. Diese Befehlszeichenfolge kann mehrere Befehle für die Auszuführende Engine enthalten. Die Befehlsreferenz finden Sie unter Debuggerbefehle .

[in] Flags

Gibt ein Bitfeld mit Ausführungsoptionen für den Befehl an. Die Standardoptionen bestehen darin, den Befehl zu protokollieren, aber nicht an die Ausgabe zu senden. In der folgenden Tabelle sind die Bits aufgeführt, die festgelegt werden können.

Wert BESCHREIBUNG
DEBUG_EXECUTE_ECHO Die Befehlszeichenfolge wird an die Ausgabe gesendet.
DEBUG_EXECUTE_NOT_LOGGED Die Befehlszeichenfolge wird nicht protokolliert. Dies wird von DEBUG_EXECUTE_ECHO überschrieben.
DEBUG_EXECUTE_NO_REPEAT Wenn Command eine leere Zeichenfolge ist, wiederholen Sie den letzten Befehl nicht, und speichern Sie die aktuelle Befehlszeichenfolge nicht zur späteren Wiederholungsausführung.

Rückgabewert

Diese Methode kann auch Fehlerwerte zurückgeben. Weitere Informationen finden Sie unter Rückgabewerte .

Rückgabecode BESCHREIBUNG
S_OK
Die Methode war erfolgreich.

Hinweise

Diese Methode führt die angegebene Befehlszeichenfolge aus. Wenn die Zeichenfolge über mehrere Befehle verfügt, wird diese Methode erst zurückgegeben, wenn alle Befehle ausgeführt wurden. Wenn die Befehlssequenz das Warten auf die Ausführung des Ziels umfasst, kann die Ausführung dieser Methode einen beliebigen Zeitraum in Anspruch nehmen.

Hinweis Es ist wichtig zu verstehen, was es bedeutet, dass ein Schrittbefehl ausgeführt wird. Ein Schrittbefehl initiiert eine Schrittaktion, wartet aber nicht, bis das Schrittschritt abgeschlossen ist. Angenommen, Sie rufen IDebugControl::Execute auf und übergeben eine Befehlszeichenfolge, die den einzelnen Befehl pct enthält. Der Befehl pct initiiert einen Schritt zum nächsten Aufruf oder Rückgabebefehl, aber pct schließt die Ausführung ab, bevor das Schrittschritt erfolgt. Daher gibt IDebugControl::Execute zurück, bevor das Schrittschritt erfolgt. Ablaufverfolgungs- und Go-Befehle verhalten sich ähnlich. Beispiele für Befehle mit diesem Verhalten sind g, gh, ta, tb, tct, pa und pc.
 

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile dbgeng.h (dbgeng.h einschließen)

Weitere Informationen

ExecuteCommandFile

IDebugControl

IDebugControl2

IDebugControl3