Compartilhar via


Conjunto de regras diversas (KMDF)

Use essas regras para verificar se o driver segue corretamente um conjunto geral de requisitos para o tratamento adequado de objetos de dispositivo, chaves e se o driver não realiza chamadas a DDIs que não são apropriadas para um driver não-PnP ou para um driver não-FDO que não seja um proprietário da política de energia.

Nesta seção

Tópico Descrição

AccessHardwareKey

A regra AccessHardwareKey especifica que um motorista de ônibus não deve tentar acessar a chave de hardware de um dispositivo filho de EvtChildListCreateDevice.

AddPdotoStaticChildlist

A regra AddPdotoStaticChildlist especifica que, para um dispositivo PDO, a função de estrutura WdfFdoAddStaticChild deve ser chamada após o driver chamar WdfPdoInitAllocate e WdfDeviceCreate com êxito .

ChildListConfiguration

A regra ChildListConfiguration especifica que os drivers que dão suporte à Enumeração Dinâmica devem chamar WdfFdoInitSetDefaultChildListConfig antes de chamar a função WdfDeviceCreate .

Cleanup4CtlDeviceRegistered

A regra Cleanup4CtlDeviceRegistered especifica que, se um driver PnP (Plug and Play) chamar WdfDeviceCreate para o objeto do dispositivo de controle, o driver deverá registrar uma das funções de retorno de chamada de evento necessárias.

NonFDONotPowerPolicyOwnerAPI

A regra NonFDONotPowerPolicyOwnerAPI especifica que, se um driver não FDO não for um proprietário de política de energia, determinados DDIs não poderão ser chamados.

NonPnPDrvPowerPolicyOwnerAPI

A regra NonPnPDrvPowerPolicyOwnerAPI especifica que os drivers não PnP não podem chamar determinados DDIs relacionados ao gerenciamento de energia.

UnSafeAllocatePool

A regra UnSafeAllocatePool é uma regra de segurança importante que verifica se um driver não está usando DDIs preteridos para alocar memória.

Para selecionar o conjunto de regras Diversificado

  1. Selecione seu projeto de driver (.vcxProj) no Microsoft Visual Studio. No menu Driver , clique em Iniciar Verificador de Driver Estático....

  2. Clique na guia Regras . Em Conjuntos de Regras, selecione Diversos.

    Para selecionar o conjunto de regras padrão em uma janela de prompt de comando do desenvolvedor do Visual Studio, especifique Miscellaneous.sdv com a opção /check . Por exemplo:

    msbuild /t:sdv /p:Inputs="/check:Miscellaneous.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
    

    Para obter mais informações, consulte Usando o Verificador de Driver Estático para localizar defeitos em drivers e comandos do Verificador de Driver Estático (MSBuild).