Partilhar via


Função KdChangeOption (wdm.h)

O KdChangeOption acessos rotineiros e altera o estado no kernel relacionado à depuração de kernel.

Sintaxe

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

Um valor da enumeração KD_OPTION que indica o estado do kernel para acessar e alterar. O valor desse parâmetro determina o formato e o comprimento necessário do do InBuffer e do OutBuffer. Atualmente, o único valor válido é KD_OPTION_SET_BLOCK_ENABLE.

[in, optional] InBufferBytes

O tamanho, em bytes, do buffer em InBuffer. Esse valor é opcional.

[in] InBuffer

Um ponteiro para um buffer de entrada alocado pelo chamador que contém informações sobre o estado do kernel a ser alterado. Se Option especificar um estado de kernel que não exija dados de entrada, esse ponteiro poderá ser NULL.

[in, optional] OutBufferBytes

O tamanho, em bytes, do buffer em outbuffer. Esse valor é opcional.

[out] OutBuffer

Um ponteiro para um buffer de saída alocado pelo chamador no qual as informações que pertencem ao estado do kernel são retornadas. Se Option especificar um estado de kernel que não produz dados de saída, esse ponteiro poderá ser NULL.

[out, optional] OutBufferNeeded

Valor de retorno

KdChangeOption retornará STATUS_SUCCESS se tiver realizado a operação solicitada com êxito. Caso contrário, o valor retornado pode ser um dos seguintes códigos de status de erro:

STATUS_ACCESS_DENIED

STATUS_INVALID_INFO_CLASS

STATUS_INVALID_PARAMETER

STATUS_DEBUGGER_INACTIVE

Observações

Se o sistema operacional foi inicializado sem controles de depuração, KdChangeOption retornará STATUS_DEBUGGER_INACTIVE.

Atualmente, o único valor válido para o parâmetro opção é KD_OPTION_SET_BLOCK_ENABLE. Se Option for definido como qualquer outro valor, KdChangeOption retornará STATUS_INVALID_INFO_CLASS. Quando Option é KD_OPTION_SET_BLOCK_ENABLE, o chamador deve definir o parâmetro InBufferBytes como tamanhos de(BOOLEAN), o parâmetro OutBufferBytes como zero e o parâmetro OutBuffer para NULL; caso contrário, KdChangeOption retornará STATUS_INVALID_PARAMETER. Se o bit alto (0x80) na variável do sistema KdBlockEnable for definido como um, o depurador nunca poderá ser habilitado novamente e KdChangeOption retornará STATUS_ACCESS_DENIED. Caso contrário, KdChangeOption define a variável de sistema KdBlockEnable para o valor BOOLEAN que inBuffer aponta para.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível no Microsoft Windows Server 2003 com Service Pack 1 (SP1) e versões posteriores do Windows e do Windows Server.
da Plataforma de Destino Universal
cabeçalho wdm.h (inclua Wdm.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL Qualquer nível