Método IDebugControl::SetInterrupt (dbgeng.h)
O método SetInterrupt registra uma interrupção do usuário ou interrompe o depurador.
Sintaxe
HRESULT SetInterrupt(
[in] ULONG Flags
);
Parâmetros
[in] Flags
Especifica o tipo de interrupção a ser registrado. Flags pode levar um dos valores listados na tabela a seguir.
Valor | Descrição |
---|---|
DEBUG_INTERRUPT_ACTIVE |
Se o destino estiver em execução, o mecanismo solicitará uma quebra no depurador. Essa solicitação pode acabar. Para obter mais informações, consulte a seção "Comentários".
Caso contrário, quando o destino for suspenso, o mecanismo registrará uma interrupção do usuário. |
DEBUG_INTERRUPT_PASSIVE | O mecanismo registrará uma interrupção do usuário. |
DEBUG_INTERRUPT_EXIT |
Se houver atualmente um WaitForEvent chamada em execução, o mecanismo o forçará a retornar. Se houver comandos de depurador que causem a execução no destino , por exemplo, g (Go) e p (Etapa) -- o mecanismo os forçará a concluir. Isso não força uma quebra no depurador, portanto, o destino pode não ser suspenso. Nesse caso, a chamada WaitForEvent retornará E_PENDING.
Caso contrário, quando o destino for suspenso, registre uma interrupção do usuário. |
Valor de retorno
Esse método também pode retornar valores de erro. Consulte de Valores Retornados para obter mais detalhes.
Código de retorno | Descrição |
---|---|
|
O método foi bem-sucedido. |
Observações
Esse método pode ser chamado a qualquer momento e de qualquer thread. Depois que a interrupção tiver sido registrada, esse método retornará imediatamente.
Se Flags for DEBUG_INTERRUPT_ACTIVE e a interrupção atingir o tempo limite, o mecanismo gerará um evento de exceção sintética. Esse evento será enviado para o método IDebugEventCallbacks::Exception do evento. A quantidade de tempo antes do tempo limite de interrupção pode ser definida usando SetInterruptTimeout.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | dbgeng.h (inclua Dbgeng.h) |