Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Aktiviert oder deaktiviert den Haltepunkt.
Syntax
Parameter
fEnable
[in] Wird auf Null (TRUE) festgelegt, um den Haltepunkt zu aktivieren oder auf Null (FALSE) zu deaktivieren.
Rückgabewert
Wenn die Ausführung erfolgreich ist, wird S_OK, andernfalls ein Fehlercode zurückgegeben. Gibt zurückE_BP_DELETED, wenn der Zustand des gebundenen Haltepunktobjekts auf (Teil der BP_STATE -Aufzählung) festgelegt BPS_DELETED ist.
Beispiel
Das folgende Beispiel zeigt, wie Sie diese Methode für ein einfaches CBoundBreakpoint Objekt implementieren, das die IDebugBoundBreakpoint2-Schnittstelle verfügbar macht.
HRESULT CBoundBreakpoint::Enable(BOOL fEnable)
{
HRESULT hr;
// Verify that the bound breakpoint has not been deleted. If deleted,
// then return hr = E_BP_DELETED.
if (m_state != BPS_DELETED)
{
// Check the state of the bound breakpoint. If the breakpoint is
// supposed to be, but has not already been, enabled, then have the
// interpreter set the breakpoint.
if (fEnable && m_state != BPS_ENABLED)
{
hr = m_pInterp->SetBreakpoint(m_sbstrDoc, this);
if (hr == S_OK)
{
// Change the state of the breakpoint to BPS_ENABLED.
m_state = BPS_ENABLED;
}
}
// Check the state of the bound breakpoint. If the breakpoint is
// supposed to be, but has not already been, disabled, then have the
// interpreter remove the breakpoint.
else if (!fEnable && m_state != BPS_DISABLED)
{
hr = m_pInterp->RemoveBreakpoint(m_sbstrDoc, this);
if (hr == S_OK)
{
// Change the state of the breakpoint to BPS_DISABLED.
m_state = BPS_DISABLED;
}
}
else
{
hr = S_FALSE;
}
}
else
{
hr = E_BP_DELETED;
}
return hr;
}