Compartir a través de


IDebugBreakpointResolution2::GetBreakpointType

Obtiene el tipo del punto de interrupción representado por esta resolución.

Sintaxis

int GetBreakpointType( 
    out enum_ BP_TYPE pBPType
);

Parámetros

pBPType
[out] Devuelve un valor de la enumeración BP_TYPE que especifica el tipo de este punto de interrupción.

Valor devuelto

Si la operación se realiza correctamente, devuelve S_OK; de lo contrario, devuelve un código de error. Devuelve E_FAIL si el bpResLocation campo de la estructura de BP_RESOLUTION_INFO asociada no es válido.

Comentarios

El punto de interrupción puede ser un código o un punto de interrupción de datos, por ejemplo.

Ejemplo

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

HRESULT CDebugBreakpointResolution::GetBreakpointType(BP_TYPE* pBPType)
{
    HRESULT hr;

    if (pBPType)
    {
        // Set default BP_TYPE.
        *pBPType = BPT_NONE;

        // Check if the BPRESI_BPRESLOCATION flag is set in BPRESI_FIELDS.
        if (IsFlagSet(m_bpResolutionInfo.dwFields, BPRESI_BPRESLOCATION))
        {
            // Set the new BP_TYPE.
            *pBPType = m_bpResolutionInfo.bpResLocation.bpType;
            hr = S_OK;
        }
        else
        {
            hr = E_FAIL;
        }
    }
    else
    {
        hr = E_INVALIDARG;
    }

    return hr;
}

Consulte también