IDebugEventCallback2::Event

디버그 이벤트의 알림을 보냅니다.

구문

int Event( 
   IDebugEngine2  pEngine,
   IDebugProcess2 pProcess,
   IDebugProgram2 pProgram,
   IDebugThread2  pThread,
   IDebugEvent2   pEvent,
   ref Guid       riidEvent,
   uint           dwAttrib
);

매개 변수

pEngine
[in] 이 이벤트를 보내는 DE(디버그 엔진)를 나타내는 IDebugEngine2 개체입니다. 이 매개 변수를 입력하려면 DE가 필요합니다.

pProcess
[in] 이벤트가 발생하는 프로세스를 나타내는 IDebugProcess2 개체입니다. 이 매개 변수는 SDM(세션 디버그 관리자)에 의해 입력됩니다. DE는 항상 이 매개 변수의 null 값을 전달합니다.

pProgram
[in] 이 이벤트가 발생하는 프로그램을 나타내는 IDebugProgram2 개체입니다. 대부분의 이벤트에서 이 매개 변수는 null 값이 아닙니다.

pThread
[in] 이벤트가 발생하는 스레드를 나타내는 IDebugThread2 개체입니다. 이벤트를 중지하는 경우 스택 프레임이 이 매개 변수에서 얻어지므로 이 매개 변수는 null 값이 될 수 없습니다.

pEvent
[in] 디버그 이벤트를 나타내는 IDebugEvent2 개체입니다.

riidEvent
[in] pEvent 매개 변수에서 가져올 이벤트 인터페이스를 식별하는 GUID입니다.

dwAttrib
[in] EVENTATTRIBUTES 열거형의 플래그 조합입니다.

Return Value

성공하면 S_OK를 반환하고, 실패하면 오류 코드를 반환합니다.

설명

이 메서드를 호출할 때 dwAttrib 매개 변수는 pEvent 매개 변수에 전달된 이벤트 개체에 대해 호출된 GetAttributes 메서드에서 반환된 값과 일치해야 합니다.

모든 디버그 이벤트는 이벤트 자체가 비동기인지 여부에 관계없이 비동기적으로 게시됩니다. DE가 이 메서드를 호출할 때 반환 값은 이벤트가 처리되었는지 여부를 나타내지 않고 이벤트가 수신되었는지 여부만 나타냅니다. 실제로 대부분의 상황에서 이 메서드가 반환될 때 이벤트가 처리되지 않았습니다.

참고 항목