次の方法で共有


IDebugEngine2::ContinueFromSynchronousEvent

以前にデバッグ エンジン (DE) から SDM に送信された同期デバッグ イベントが受信および処理されたことを示すために、セッション デバッグ マネージャー (SDM) によって呼び出されます。

構文

HRESULT ContinueFromSynchronousEvent(
    IDebugEvent2 pEvent
);

パラメーター

pEvent
[入力] 以前に送信された同期イベントを表す IDebugEvent2 オブジェクト。そのイベントからデバッガーが続行されます。

戻り値

成功した場合は、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;
}

関連項目