Share via


IDebugPendingBreakpoint2::Enable

Schaltet den aktivierten Zustand des ausstehenden Haltepunkts um.

Syntax

int Enable(
    int fEnable
);

Parameter

fEnable
[in] Wird auf "nonzero (TRUE)" festgelegt, um einen ausstehenden Haltepunkt zu aktivieren, oder auf Null (FALSE) zum Deaktivieren.

Rückgabewert

Wenn die Ausführung erfolgreich ist, wird S_OK, andernfalls ein Fehlercode zurückgegeben. Gibt zurück E_BP_DELETED , wenn der Haltepunkt gelöscht wurde.

Hinweise

Wenn ein ausstehender Haltepunkt aktiviert oder deaktiviert ist, werden alle haltepunkte, die davon gebunden sind, auf denselben Zustand festgelegt.

Diese Methode kann beliebig oft aufgerufen werden, auch wenn der Haltepunkt bereits aktiviert oder deaktiviert ist.

Beispiel

Das folgende Beispiel zeigt, wie Sie diese Methode für ein einfaches CPendingBreakpoint Objekt implementieren, das die IDebugPendingBreakpoint2-Schnittstelle verfügbar macht.

HRESULT CPendingBreakpoint::Enable(BOOL fEnable)
{
    HRESULT hr;

    // Verify that the pending breakpoint has not been deleted. If deleted,
    // then return hr = E_BP_DELETED.
    if (m_state.state != PBPS_DELETED)
    {
        // If the bound breakpoint member variable is valid, then enable or
        // disable the bound breakpoint.
        if (m_pBoundBP)
        {
            m_pBoundBP->Enable(fEnable);
        }
        // Set the PENDING_BP_STATE in the PENDING_BP_STATE_INFO structure
        // to enabled or disabled depending on the passed BOOL condition.
        m_state.state = fEnable ? PBPS_ENABLED : PBPS_DISABLED;
        hr = S_OK;

    }
    else
    {
        hr = E_BP_DELETED;
    }

    return hr;
}

Siehe auch