Compartir a través de


Función KdChangeOption (wdm.h)

La rutina KdChangeOption accede y cambia el estado en el kernel relacionado con la depuración del kernel.

Sintaxis

NTSTATUS KdChangeOption(
  [in]            KD_OPTION Option,
  [in, optional]  ULONG     InBufferBytes,
  [in]            PVOID     InBuffer,
  [in, optional]  ULONG     OutBufferBytes,
  [out]           PVOID     OutBuffer,
  [out, optional] PULONG    OutBufferNeeded
);

Parámetros

[in] Option

Valor de la enumeración KD_OPTION que indica el estado del kernel para acceder y cambiar. El valor de este parámetro determina el formato y la longitud necesaria de InBuffer y OutBuffer. Actualmente, el único valor válido es KD_OPTION_SET_BLOCK_ENABLE.

[in, optional] InBufferBytes

Tamaño, en bytes, del búfer en InBuffer. Este valor es opcional.

[in] InBuffer

Puntero a un búfer de entrada asignado por el autor de la llamada que contiene información sobre el estado del kernel que se va a cambiar. Si Option especifica un estado de kernel que no requiere datos de entrada, este puntero puede ser NULL.

[in, optional] OutBufferBytes

Tamaño, en bytes, del búfer en OutBuffer. Este valor es opcional.

[out] OutBuffer

Puntero a un búfer de salida asignado por el autor de la llamada en el que se devuelve información relativa al estado del kernel. Si Option especifica un estado de kernel que no genera datos de salida, este puntero puede ser NULL.

[out, optional] OutBufferNeeded

Valor devuelto

KdChangeOption devuelve STATUS_SUCCESS si realizó correctamente la operación solicitada. De lo contrario, el valor devuelto puede ser uno de los siguientes códigos de estado de error:

STATUS_ACCESS_DENIED

STATUS_INVALID_INFO_CLASS

STATUS_INVALID_PARAMETER

STATUS_DEBUGGER_INACTIVE

Comentarios

Si el sistema operativo se ha arrancado sin controles de depuración, KdChangeOption devuelve STATUS_DEBUGGER_INACTIVE.

Actualmente, el único valor válido para el parámetro Option es KD_OPTION_SET_BLOCK_ENABLE. Si Option se establece en cualquier otro valor, KdChangeOption devuelve STATUS_INVALID_INFO_CLASS. Cuando Option es KD_OPTION_SET_BLOCK_ENABLE, el autor de la llamada debe establecer el parámetro InBufferBytes en sizeof(BOOLEAN), el parámetro OutBufferBytes en cero y el parámetro OutBuffer en NULL; de lo contrario, KdChangeOption devuelve STATUS_INVALID_PARAMETER. Si el bit alto (0x80) de la variable del sistema KdBlockEnable se establece en uno, el depurador nunca se puede volver a habilitar y KdChangeOption devuelve STATUS_ACCESS_DENIED. De lo contrario, KdChangeOption establece la variable del sistema KdBlockEnable en el valor BOOLEAN al que Apunta InBuffer .

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Microsoft Windows Server 2003 con Service Pack 1 (SP1) y versiones posteriores de Windows y Windows Server.
Plataforma de destino Universal
Encabezado wdm.h (incluya Wdm.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL Cualquier nivel