Metodo IDebugControl2::Execute (dbgeng.h)

Il metodo Execute esegue i comandi del debugger specificati.

Sintassi

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

Parametri

[in] OutputControl

Specifica il controllo di output da usare durante l'esecuzione del comando. Per i valori possibili, vedere DEBUG_OUTCTL_XXX. Per altre informazioni sull'output, vedere Input e Output.

[in] Command

Specifica la stringa di comando da eseguire. Il comando viene interpretato come quelli digitati in una finestra dei comandi del debugger. Questa stringa di comando può contenere più comandi per l'esecuzione del motore. Vedere Comandi debugger per il riferimento al comando.

[in] Flags

Specifica un campo bit delle opzioni di esecuzione per il comando. Le opzioni predefinite devono registrare il comando ma non inviarle all'output. Nella tabella seguente sono elencati i bit che possono essere impostati.

Valore Descrizione
DEBUG_EXECUTE_ECHO La stringa di comando viene inviata all'output.
DEBUG_EXECUTE_NOT_LOGGED La stringa di comando non è registrata. Questa operazione viene sostituita da DEBUG_EXECUTE_ECHO.
DEBUG_EXECUTE_NO_REPEAT Se Command è una stringa vuota, non ripetere l'ultimo comando e non salvare la stringa di comando corrente per ripetere l'esecuzione in un secondo momento.

Valore restituito

Questo metodo può anche restituire valori di errore. Per altre informazioni, vedere Valori restituiti .

Codice restituito Descrizione
S_OK
Il metodo è stato eseguito correttamente.

Commenti

Questo metodo esegue la stringa di comando specificata. Se la stringa ha più comandi, questo metodo non restituirà fino a quando non sono stati eseguiti tutti i comandi. Se la sequenza di comandi prevede l'attesa dell'esecuzione della destinazione, questo metodo può richiedere un intervallo di tempo arbitrario per completare.

Nota È importante comprendere cosa significa per eseguire un comando di passaggio. Un comando passaggio avvia un'azione di passaggio, ma non attende il completamento dell'esecuzione. Si supponga, ad esempio, di chiamare IDebugControl::Execute e passare una stringa di comando contenente il singolo comando pct. Il comando pct avvia un passaggio alla chiamata successiva o restituisce l'istruzione, ma pct completa l'esecuzione prima dell'esecuzione. Di conseguenza, IDebugControl::Execute restituisce prima del passaggio. I comandi di traccia e go si comportano in modo simile. Esempi di comandi con questo comportamento includono g, gh, ta, tb, tct, pa e pc.
 

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione dbgeng.h (includere Dbgeng.h)

Vedi anche

ExecuteCommandFile

Idebugcontrol

IDebugControl2

IDebugControl3