Partilhar via


IDebugPendingBreakpoint2::Enable

Alterna o estado habilitado do ponto de interrupção pendente.

HRESULT Enable( 
   BOOL fEnable
);
int Enable( 
   int fEnable
);

Parâmetros

  • fEnable
    [in] Definir como diferente de zero (TRUE) para permitir que um ponto de interrupção pendente ou a zero (FALSE) para desativar.

Valor de retorno

Se bem-sucedida, retorna S_OK; Caso contrário, retorna um código de erro. Retorna E_BP_DELETED se o ponto de interrupção foi excluído.

Comentários

Quando um ponto de interrupção pendente é habilitado ou desabilitado, todos os pontos de interrupção acoplados a partir dele são definidos no mesmo estado.

Esse método pode ser chamado quantas vezes for necessário, mesmo se o ponto de interrupção já está ativado ou desativado.

Exemplo

O exemplo a seguir mostra como implementar este método para um simples CPendingBreakpoint objeto que expõe a IDebugPendingBreakpoint2 interface.

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;  
}  

Consulte também

Referência

IDebugPendingBreakpoint2