Condividi tramite


IDebugBreakpointErrorEvent2::GetErrorBreakpoint

Ottiene un oggetto IDebugErrorBreakpoint2 che descrive il motivo per cui un punto di interruzione non è stato associato.

Sintassi

int GetErrorBreakpoint( 
    out IDebugErrorBreakpoint2 ppErrorBP
);

Parametri

ppErrorBP
[out] Restituisce un oggetto IDebugErrorBreakpoint2 che descrive l'avviso o l'errore.

Valore restituito

Se ha esito positivo, restituisce S_OK; in caso contrario, restituisce un codice di errore.

Osservazioni:

Dopo aver ottenuto l'interfaccia IDebugErrorBreakpoint2 , chiamare il metodo GetBreakpointResolution per ottenere un oggetto IDebugErrorBreakpointResolution2 . È quindi possibile usare il metodo GetResolutionInfo per determinare una posizione non valida, un'espressione non valida o i motivi per cui il punto di interruzione in sospeso non è stato associato, ad esempio il codice non ancora caricato e così via.

Esempio

Nell'esempio seguente viene illustrato come implementare questo metodo per un oggetto CBreakpointSetDebugEventBase che espone l'interfaccia IDebugBreakpointErrorEvent2 .

STDMETHODIMP CBreakpointErrorDebugEventBase::GetErrorBreakpoint(
    IDebugErrorBreakpoint2 **ppbp)
{
    HRESULT hRes = E_FAIL;

    if ( ppbp )
    {
        if ( m_pError )
        {
            *ppbp = m_pError;

            m_pError->AddRef();

            hRes = S_OK;
        }
        else
            hRes = E_FAIL;
    }
    else
        hRes = E_INVALIDARG;

    return ( hRes );
}

Vedi anche