IDebugBreakpointBoundEvent2::EnumBoundBreakpoints
Tworzy moduł wyliczający punktów przerwania powiązanych z tym zdarzeniem.
Składnia
Parametry
ppEnum
[out] Zwraca obiekt IEnumDebugBoundBreakpoints2 , który wylicza wszystkie punkty przerwania powiązane z tym zdarzeniem.
Wartość zwracana
Jeśli operacja powiedzie się, zwraca wartość S_OK
. Zwraca wartość S_FALSE
, jeśli nie ma powiązanych punktów przerwania; w przeciwnym razie zwraca kod błędu.
Uwagi
Lista powiązanych punktów przerwania dotyczy tych powiązanych z tym zdarzeniem i może nie być cała lista punktów przerwania powiązanych z oczekującym punktem przerwania. Aby uzyskać listę wszystkich punktów przerwania powiązanych z oczekującym punktem przerwania, wywołaj metodę GetPendingBreakpoint , aby uzyskać skojarzony obiekt IDebugPendingBreakpoint2 , a następnie wywołaj metodę EnumBoundBreakpoints , aby uzyskać obiekt IEnumDebugBoundBreakpoints2 zawierający wszystkie powiązane punkty przerwania dla oczekującego punktu przerwania.
Przykład
W poniższym przykładzie pokazano, jak zaimplementować tę metodę dla obiektu CBreakpointSetDebugEventBase , który uwidacznia interfejs 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 );
}