Compartir a través de


Método IDebugControl::SetInterrupt (dbgeng.h)

El método SetInterrupt registra una interrupción del usuario o se interrumpe en el depurador.

Sintaxis

HRESULT SetInterrupt(
  [in] ULONG Flags
);

Parámetros

[in] Flags

Especifica el tipo de interrupción que se va a registrar. marcas puede tomar uno de los valores enumerados en la tabla siguiente.

Valor Descripción
DEBUG_INTERRUPT_ACTIVE Si el destino se está ejecutando, el motor solicitará una interrupción en el depurador. Esta solicitud puede agotar el tiempo de espera. Para obtener más información, vea la sección "Comentarios".

De lo contrario, cuando se suspende el destino, el motor registrará una interrupción del usuario.

DEBUG_INTERRUPT_PASSIVE El motor registrará una interrupción del usuario.
DEBUG_INTERRUPT_EXIT Si actualmente hay una waitForEvent llamada en ejecución, el motor lo obligará a devolver. Si hay comandos del depurador que provocan la ejecución en el destino (por ejemplo, g (Go) y p (paso), el motor los obligará a completarse. Esto no fuerza una interrupción en el depurador, por lo que es posible que el destino no se suspenda. En ese caso, la llamada WaitForEvent devolverá E_PENDING.

De lo contrario, cuando se suspenda el destino, registre una interrupción del usuario.

Valor devuelto

Este método también puede devolver valores de error. Consulte valores devueltos para obtener más información.

Código devuelto Descripción
S_OK
El método se realizó correctamente.

Observaciones

Este método se puede llamar en cualquier momento y desde cualquier subproceso. Una vez registrada la interrupción, este método devuelve inmediatamente.

Si marcas es DEBUG_INTERRUPT_ACTIVE y se agota el tiempo de espera de interrupción, el motor generará un evento de excepción sintético. Este evento se enviará al método IDebugEventCallbacks::Exception de la devolución de llamada del evento. La cantidad de tiempo antes de que se agote el tiempo de espera de interrupción se puede establecer mediante SetInterruptTimeout.

Requisitos

Requisito Valor
de la plataforma de destino de Escritorio
encabezado de dbgeng.h (include Dbgeng.h)

Consulte también

getInterrupt

GetInterruptTimeout

IDebugControl

IDebugControl2

IDebugControl3

SetInterruptTimeout