Compartir a través de


IDebugBreakpointBoundEvent2::EnumBoundBreakpoints

Crea un enumerador de puntos de interrupción enlazados en este evento.

Sintaxis

int EnumBoundBreakpoints( 
    out IEnumDebugBoundBreakpoints2 ppEnum
);

Parámetros

ppEnum
[out] Devuelve un objeto IEnumDebugBoundBreakpoints2 que enumera todos los puntos de interrupción enlazados de este evento.

Valor devuelto

Si la operación se realiza correctamente, devuelve S_OK. Devuelve S_FALSE si no hay puntos de interrupción enlazados; de lo contrario, devuelve un código de error.

Comentarios

La lista de puntos de interrupción enlazados es para aquellos enlazados a este evento y podría no ser la lista completa de puntos de interrupción enlazados desde un punto de interrupción pendiente. Para obtener una lista de todos los puntos de interrupción enlazados a un punto de interrupción pendiente, llame al método GetPendingBreakpoint para obtener el objeto IDebugPendingBreakpoint2 asociado y, a continuación, llame al método EnumBoundBreakpoints para obtener un objeto IEnumDebugBoundBreakpoints2 que contiene todos los puntos de interrupción enlazados para el punto de interrupción pendiente.

Ejemplo

En el ejemplo siguiente se muestra cómo implementar este método para un objeto CBreakpointSetDebugEventBase que expone la interfaz IDebugBreakpointBoundEvent2 .

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

Consulte también