IDebugBreakpointResolution2::GetBreakpointType

Возвращает тип точки останова, представленную этим разрешением.

Синтаксис

int GetBreakpointType( 
    out enum_ BP_TYPE pBPType
);

Параметры

pBPType
[out] Возвращает значение из перечисления BP_TYPE , указывающего тип этой точки останова.

Возвращаемое значение

В случае успешного выполнения возвращается S_OK; в противном случае возвращается код ошибки. Возвращает E_FAIL, если bpResLocation поле в связанной BP_RESOLUTION_INFO структуре недопустимо.

Замечания

Точка останова может быть кодом или точкой останова данных, например.

Пример

В следующем примере показано, как реализовать этот метод для простого CDebugBreakpointResolution объекта, предоставляющего интерфейс 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;
}

См. также