IDebugEventCallbacks::ChangeDebuggeeState 메서드(dbgeng.h)
ChangeDebuggeeState 콜백 메서드는 엔진이 대상 변경 내용을 만들거나 검색할 때 호출됩니다.
통사론
HRESULT ChangeDebuggeeState(
[in] ULONG Flags,
[in] ULONG64 Argument
);
매개 변수
[in] Flags
대상에 대한 변경의 유형을 지정합니다. 플래그 다음 값 중 하나를 취할 수 있습니다.
값 | 묘사 |
---|---|
DEBUG_CDS_ALL | 대상의 일반적인 변경이 발생했습니다. 예를 들어 대상이 실행 중이거나 엔진이 대상에 연결되었습니다. |
DEBUG_CDS_REGISTERS | 대상에 대한 프로세서 레지스터가 변경되었습니다. |
DEBUG_CDS_DATA | 대상의 데이터 공간이 변경되었습니다. |
DEBUG_CDS_REFRESH | 디버거 창을 새로 고치도록 GUI 클라이언트에 알릴 수 있습니다. |
[in] Argument
대상의 변경 내용에 대한 추가 정보를 제공합니다. Argument 값의 해석은 Flags값에 따라 달라집니다.
- DEBUG_CDS_ALL
- Argument 값은 0입니다.
- DEBUG_CDS_REGISTERS
- 단일 레지스터가 변경된 경우 Argument 값은 해당 레지스터의 인덱스입니다. 그렇지 않으면 Argument 값이 DEBUG_ANY_ID.
- DEBUG_CDS_DATA
-
Argument 값은 변경된 데이터 공간을 지정합니다. 다음 표에는 Argument가능한 값이 포함되어 있습니다.
값 묘사 DEBUG_DATA_SPACE_VIRTUAL 대상의 가상 메모리가 변경되었습니다. DEBUG_DATA_SPACE_PHYSICAL 대상의 실제 메모리가 변경되었습니다. DEBUG_DATA_SPACE_CONTROL 대상의 컨트롤 메모리가 변경되었습니다. DEBUG_DATA_SPACE_IO 대상의 I/O 포트가 입력 또는 출력을 받았습니다. DEBUG_DATA_SPACE_MSR 대상의 MSR(Model-Specific 레지스터)이 변경되었습니다. DEBUG_DATA_SPACE_BUS_DATA 대상의 버스 메모리가 변경되었습니다. - DEBUG_CDS_REFRESH
-
다음 표에는 Argument가능한 값이 포함되어 있습니다.
값 DEBUG_CDS_REFRESH_EVALUATE DEBUG_CDS_REFRESH_EXECUTE DEBUG_CDS_REFRESH_EXECUTECOMMANDFILE DEBUG_CDS_REFRESH_ADDBREAKPOINT DEBUG_CDS_REFRESH_REMOVEBREAKPOINT DEBUG_CDS_REFRESH_WRITEVIRTUAL DEBUG_CDS_REFRESH_WRITEVIRTUALUNCACHED DEBUG_CDS_REFRESH_WRITEPHYSICAL DEBUG_CDS_REFRESH_WRITEPHYSICAL2 DEBUG_CDS_REFRESH_SETVALUE DEBUG_CDS_REFRESH_SETVALUE2 DEBUG_CDS_REFRESH_SETSCOPE DEBUG_CDS_REFRESH_SETSCOPEFRAMEBYINDEX DEBUG_CDS_REFRESH_SETSCOPEFROMJITDEBUGINFO DEBUG_CDS_REFRESH_SETSCOPEFROMSTOREDEVENT DEBUG_CDS_REFRESH_INLINESTEP DEBUG_CDS_REFRESH_INLINESTEP_PSEUDO
반환 값
반환 값은 원격 프로시저 호출 오류를 나타내지 않는 한 엔진에서 무시됩니다. 이 경우 이 IDebugEventCallbacks 개체가 등록된 클라이언트는 사용하지 않도록 설정됩니다.
발언
엔진은 IDebugEventCallbacks::GetInterestMask반환된 마스크에 DEBUG_EVENT_CHANGE_DEBUGGEE_STATE 플래그가 설정된 경우에만 ChangeDebuggeeState 호출합니다.
이벤트 처리에 대한 자세한 내용은 모니터링 이벤트참조하세요. 레지스터 및 데이터 공간을 포함하여 대상의 메모리를 관리하는 방법에 대한 자세한 내용은 메모리 액세스참조하세요. 대상의 가상 및 실제 메모리에 대한 자세한 내용은 가상 및 실제 메모리참조하세요. 대상의 제어 메모리, I/O 포트, MSR 및 버스 메모리에 대한 자세한 내용은 기타 데이터 공간참조하세요.
요구 사항
요구 | 값 |
---|---|
대상 플랫폼 | 바탕 화면 |
헤더 | dbgeng.h(Dbgeng.h 포함) |