IDebugEngine2::ContinueFromSynchronousEvent

Wird vom Sitzungsdebug-Manager (SDM) aufgerufen, um anzugeben, dass ein synchrones Debugereignis, das zuvor vom Debugmodul (DE) an das SDM gesendet wurde, empfangen und verarbeitet wurde.

Syntax

HRESULT ContinueFromSynchronousEvent(
    IDebugEvent2 pEvent
);

Parameter

pEvent
[in] Ein IDebugEvent2 -Objekt, das das zuvor gesendete synchrone Ereignis darstellt, von dem der Debugger jetzt fortgesetzt werden soll.

Rückgabewert

Wenn die Ausführung erfolgreich ist, wird S_OK, andernfalls ein Fehlercode zurückgegeben.

Hinweise

Die DE muss überprüfen, ob es sich um die Quelle des Ereignisses handelt, das durch den pEvent Parameter dargestellt wird.

Beispiel

Das folgende Beispiel zeigt, wie Sie diese Methode für ein einfaches CEngine Objekt implementieren, das die IDebugEngine2-Schnittstelle implementiert.

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;
}

Siehe auch