다음을 통해 공유


IDebugEngine2::ContinueFromSynchronousEvent

SDM(세션 디버그 관리자)에서 호출하여 이전에 DE(디버그 엔진)가 SDM으로 보낸 동기 디버그 이벤트를 수신하고 처리했음을 나타냅니다.

구문

HRESULT ContinueFromSynchronousEvent(
    IDebugEvent2 pEvent
);

매개 변수

pEvent
[in] 디버거가 계속되어야 하는 이전에 보낸 동기 이벤트를 나타내는 IDebugEvent2 개체입니다.

Return Value

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

설명

DE는 pEvent 매개 변수가 나타내는 이벤트의 원본인지 확인해야 합니다.

예시

다음 예제는 IDebugEngine2 인터페이스를 구현하는 간단한 CEngine 개체에 대해 이 메서드를 구현하는 방법을 보여 줍니다.

HRESULT CEngine::ContinueFromSynchronousEvent(IDebugEvent2* pEvent)
{
    HRESULT hr;

    // Create a pointer to a unique event interface defined for batch file
    // breaks.
    IAmABatchFileEvent *pBatEvent;
    // Check for successful query for the unique batch file event
    // interface.
    if (SUCCEEDED(pEvent->QueryInterface(IID_IAmABatchFileEvent,
                                        (void **)&pBatEvent)))
    {
        // Release the result of the QI.
        pBatEvent->Release();
        // Check thread message for notification to continue.
        if (PostThreadMessage(GetCurrentThreadId(),
                              WM_CONTINUE_SYNC_EVENT,
                              0,
                              0))
        {
            hr = S_OK;
        }
        else
        {
            hr = HRESULT_FROM_WIN32(GetLastError());
        }
    }
    else
    {
        hr = E_INVALIDARG;
    }
    return hr;
}

참고 항목