Freigeben über


IDebugBreakpointBoundEvent2::EnumBoundBreakpoints

Erstellt einen Enumerator von Haltepunkten, die an dieses Ereignis gebunden waren.

Syntax

int EnumBoundBreakpoints( 
    out IEnumDebugBoundBreakpoints2 ppEnum
);

Parameter

ppEnum
[out] Gibt ein IEnumDebugBoundBreakpoints2 -Objekt zurück, das alle haltepunkte aufzählt, die von diesem Ereignis gebunden sind.

Rückgabewert

Gibt bei Erfolg S_OK zurück. Gibt zurück S_FALSE , wenn keine gebundenen Haltepunkte vorhanden sind. Andernfalls wird ein Fehlercode zurückgegeben.

Hinweise

Die Liste der gebundenen Haltepunkte gilt für diejenigen, die an dieses Ereignis gebunden sind, und ist möglicherweise nicht die gesamte Liste der Haltepunkte, die von einem ausstehenden Haltepunkt gebunden sind. Rufen Sie zum Abrufen einer Liste aller Haltepunkte, die an einen ausstehenden Haltepunkt gebunden sind, die GetPendingBreakpoint-Methode auf, um das zugeordnete IDebugPendingBreakpoint2-Objekt abzurufen, und rufen Sie dann die EnumBoundBreakpoints-Methode auf, um ein IEnumDebugBoundBreakpoints2 -Objekt abzurufen, das alle gebundenen Haltepunkte für den ausstehenden Haltepunkt enthält.

Beispiel

Das folgende Beispiel zeigt, wie Sie diese Methode für ein CBreakpointSetDebugEventBase-Objekt implementieren, das die IDebugBreakpointBoundEvent2-Schnittstelle verfügbar macht.

STDMETHODIMP CBreakpointSetDebugEventBase::EnumBoundBreakpoints(
    IEnumDebugBoundBreakpoints2 **ppEnum)
{
    HRESULT hRes = E_FAIL;

    if ( ppEnum )
    {
        if ( m_pEnumBound )
        {
            hRes = m_pEnumBound->Clone(ppEnum);

            if ( EVAL(S_OK == hRes) )
                (*ppEnum)->Reset();
        }
        else
            hRes = E_FAIL;
    }
    else
        hRes = E_INVALIDARG;

    return ( hRes );
}

Siehe auch