다음을 통해 공유


IDebugControl2::Execute 메서드(dbgeng.h)

Execute 메서드는 지정된 디버거 명령을 실행합니다.

구문

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

매개 변수

[in] OutputControl

명령을 실행하는 동안 사용할 출력 컨트롤을 지정합니다. 가능한 값은 DEBUG_OUTCTL_XXX 참조하세요. 출력에 대한 자세한 내용은 입력 및 출력을 참조하세요.

[in] Command

실행할 명령 문자열을 지정합니다. 명령은 디버거 명령 창에 입력된 명령과 같이 해석됩니다. 이 명령 문자열에는 엔진이 실행할 여러 명령이 포함될 수 있습니다. 명령 참조는 디버거 명령을 참조하세요.

[in] Flags

명령에 대한 실행 옵션의 비트 필드를 지정합니다. 기본 옵션은 명령을 기록하지만 출력으로 보내지 않는 것입니다. 다음 표에서는 설정할 수 있는 비트를 나열합니다.

Description
DEBUG_EXECUTE_ECHO 명령 문자열이 출력으로 전송됩니다.
DEBUG_EXECUTE_NOT_LOGGED 명령 문자열이 기록되지 않습니다. 이는 DEBUG_EXECUTE_ECHO 재정의됩니다.
DEBUG_EXECUTE_NO_REPEAT 명령이 빈 문자열인 경우 마지막 명령을 반복하지 말고 나중에 반복 실행을 위해 현재 명령 문자열을 저장하지 마세요.

반환 값

이 메서드는 오류 값을 반환할 수도 있습니다. 자세한 내용은 반환 값을 참조하세요.

반환 코드 Description
S_OK
메서드를 성공적으로 수행했습니다.

설명

이 메서드는 지정된 명령 문자열을 실행합니다. 문자열에 여러 명령이 있는 경우 이 메서드는 모든 명령이 실행될 때까지 반환되지 않습니다. 명령 시퀀스에 대상 실행 대기가 포함되는 경우 이 메서드는 완료하는 데 임의의 시간이 걸릴 수 있습니다.

참고 단계 명령이 실행되는 것이 무엇을 의미하는지 이해하는 것이 중요합니다. 단계 명령은 단계별 작업을 시작하지만 단계별 실행이 완료되기를 기다리지 않습니다. 예를 들어 IDebugControl::Execute 를 호출하고 단일 명령 pct가 포함된 명령 문자열을 전달한다고 가정합니다. pct 명령은 다음 호출 또는 반환 명령에 대한 단계를 시작하지만 pct는 단계별 실행이 수행되기 전에 실행을 완료합니다. 따라서 단계별 실행이 수행되기 전에 IDebugControl::Execute 가 반환됩니다. 추적 및 이동 명령은 비슷한 방식으로 동작합니다. 이 동작이 있는 명령의 예로 는 g, gh, ta, tb, tct, papc가 있습니다.
 

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 dbgeng.h(Dbgeng.h 포함)

추가 정보

ExecuteCommandFile

IDebugControl

IDebugControl2

IDebugControl3