DetailPage-MSS-KB

Base de Dados de Conhecimento

ID do artigo: 837643 - Última revisão: sábado, 29 de maio de 2004 - Revisão: 1.0

 

Sumário

Este artigo descreve como determinar se o sistema está sendo executado no modo de segurança de um driver de dispositivo.

Mais Informações

O Kernel do Windows exporta um ponteiro para uma variável ULONG chamado InitSafeBootMode . Essa variável contém as configurações do modo de segurança.

Um driver de dispositivo pode determinar se o sistema está sendo executado no modo de segurança pelo valor da variável InitSafeBootMode . Um valor 0 significa que o sistema não está sendo executado no modo de segurança.

A tabela a seguir lista os modos para outros valores.
Recolher esta tabelaExpandir esta tabela
valor modo
1 SAFEBOOT_MINIMAL
2 SAFEBOOT_NETWORK
3 * SAFEBOOT_DSREPAIR
* Observação O valor de 3 se aplica a apenas controladores de domínio do Windows.

Você deve declarar o seguinte no seu driver.
extern PULONG InitSafeBootMode; 
Você deve verificar o valor de InitSafeBootMode para determinar se o sistema está sendo executado no modo de segurança.
if (*InitSafeBootMode > 0){ 

     // The system is in Safe Mode. 
     // Take appropriate action. 
     //     
} 
por exemplo, para impedir que um driver funcione no modo de segurança, use um dos métodos a seguir:
  • drivers de função

    Se o driver de função tiver um tipo de início do serviço de SERVICE_BOOT_START, verificar o valor da variável InitSafeBootMode na rotina em AddDevice e retornar falha.

    Observação Você nunca deve retornar falha de rotina DriverEntry .
  • drivers de filtro

    Se o driver de filtro é iniciado durante o tempo de inicialização, verifique o valor da variável InitSafeBootMode na rotina em AddDevice . Não anexe à pilha de dispositivo. Retorne o êxito de rotina em AddDevice .
  • outros drivers

    Para drivers que não são mencionadas anteriormente, verifique o valor da variável InitSafeBootMode na rotina DriverEntry . Retorna falha se o sistema estiver no modo de segurança.

A informação contida neste artigo aplica-se a:
  • Microsoft Windows Server 2003 Driver Development Kit (DDK)
  • Microsoft Windows XP Driver Development Kit
  • Microsoft Win32 Device Driver Kit for Windows 2000
Palavras-chave: 
kbmt kbinfo kbdev kbhardware kbdriver kbddk kbwdm KB837643 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 837643  (http://support.microsoft.com/kb/837643/en-us/ )
Compartilhar
Opções de suporte adicionais
Fóruns de Suporte do Microsoft Community
Contate-nos diretamente
Localize um parceiro certificado da Microsoft
Microsoft Store