다음을 통해 공유


PDEBUG_EXTENSION_CALL 콜백 함수(dbgeng.h)

PDEBUG_EXTENSION_CALL 형식의 콜백 함수는 엔진에서 확장 명령을 실행하기 위해 호출됩니다. 대문자가 없는 한 이러한 함수에 원하는 이름을 지정할 수 있습니다.

구문

PDEBUG_EXTENSION_CALL PdebugExtensionCall;

HRESULT PdebugExtensionCall(
  [in]           PDEBUG_CLIENT Client,
  [in, optional] PCSTR Args
)
{...}

매개 변수

[in] Client

클라이언트에 대한 인터페이스 포인터를 지정합니다. 엔진과 상호 작용하는 데 사용할 수 있습니다. 일반적으로 확장 명령이 실행된 클라이언트입니다.

[in, optional] Args

확장 명령에 전달된 인수를 지정합니다. 특히 명령줄에서 확장 명령을 호출한 경우 Args 에는 나머지 명령줄이 포함됩니다. NULL이거나 비어 있을 수 있습니다.

반환 값

반환 코드 Description
S_OK
함수가 성공했습니다.
DEBUG_EXTENSION_CONTINUE_SEARCH
함수가 명령을 처리할 수 없거나 다른 확장 DLL에서 동일한 명령의 다른 구현도 실행해야 했음을 나타냅니다. 엔진은 명령을 처리할 다른 함수에 대해 다른 확장 DLL을 계속 검색해야 합니다. 예를 들어 각 도움말 함수가 CONTINUE_SEARCH 반환하는 경우 모든 도움말 함수를 실행하는 데 사용할 수 있습니다.
 

다른 모든 반환 값은 엔진에서 무시됩니다.

설명

함수의 이름은 확장 명령의 이름이 됩니다. 확장 명령을 실행할 때 엔진은 로드된 각 확장 DLL을 차례로 검색하여 명령과 이름이 같은 내보낸 함수를 찾습니다. 예를 들어 !stack 명령을 실행할 때 엔진은 로드된 각 확장 DLL에서 stack 이라는 내보낸 함수를 찾습니다. 확장 DLL이 검색되는 순서에 대한 자세한 내용은 디버거 확장 명령 사용을 참조하세요.

확장 함수는 다른 클라이언트를 사용할 특정 이유가 없는 한 엔진과의 모든 상호 작용을 위해 클라이언트 에서 전달된 클라이언트를 사용해야 합니다. 확장 함수는 완료된 후 클라이언트 개체에 대한 포인터를 유지 관리해서는 안 됩니다.

DebugExtensionCall은 Dbgeng.h 헤더 파일에서 PDEBUG_EXTENSION_CALL 호출됩니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 dbgeng.h

추가 정보

IDebugClient