Udostępnij przez


IDebugBreakpointResolution2::GetBreakpointType

Pobiera typ punktu przerwania reprezentowanego przez tę rozdzielczość.

Składnia

int GetBreakpointType( 
    out enum_ BP_TYPE pBPType
);

Parametry

pBPType
[out] Zwraca wartość z wyliczenia BP_TYPE , która określa typ tego punktu przerwania.

Wartość zwracana

Jeśli operacja powiedzie się, zwraca wartość S_OK; w przeciwnym razie zwraca kod błędu. Zwraca E_FAIL, jeśli bpResLocation pole w skojarzonej strukturze BP_RESOLUTION_INFO jest nieprawidłowe.

Uwagi

Na przykład punkt przerwania może być kodem lub punktem przerwania danych.

Przykład

W poniższym przykładzie pokazano, jak zaimplementować tę metodę dla prostego CDebugBreakpointResolution obiektu, który uwidacznia interfejs 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;
}

Zobacz też