Conjunto de regras do VirtualStorport (Storport)
Use essas regras para verificar se o driver chama corretamente DDIs que são de particular interesse para drivers de miniporto virtual do Storport (VMiniport).
Nesta seção
Tópico | Descrição |
---|---|
Essa regra verifica se o driver não tenta liberar o mesmo bloco de memória do pool duas vezes. |
|
Essa regra verifica se KeSetEvent não é chamado duas vezes no mesmo objeto de evento. Se o mesmo objeto de evento for passado para a rotina, o driver falhará na regra. |
|
Essa regra verifica se um IRP alocado por IoAllocateIrp será liberado por IoFreeIrp ou sua rotina de conclusão será definida por IoSetCompletionRoutine. |
|
Essa regra verifica se, ao sair da rotina HwStorFindAdapter , o campo VirtualDevice na estrutura PORT_CONFIGURATION_INFORMATION (Storport) foi definido como FALSE. A regra se aplica somente a miniportes físicos do StorPort. |
|
Essa regra verifica se, após a saída da rotina HwStorFindAdapter , o campo VirtualDevice na estrutura PORT_CONFIGURATION_INFORMATION (Storport) foi definido como TRUE. A regra se aplica somente a miniportes storport virtuais. |
|
Essa regra verifica se as chamadas do driver para determinadas funções de sincronização são feitas somente enquanto a entrega normal de APC do kernel está desabilitada. |
|
Essa regra verifica se o identificador para uma chave do Registro criada com ZwCreateKey é usado corretamente por outras rotinas ZwXxx . A rotina ZwOpenKey não deve ser chamada em um identificador já aberto. As rotinas ZwEnumerateKey, ZwEnumerateValueKey, ZwFlushKey, ZwQueryKey, ZwQueryValueKey, ZwSetValueKey, ZwClose e ZwDeleteKey não devem ser chamadas em um identificador que não esteja aberto. O identificador também deve ser fechado antes de retornar. |
|
Essa regra verifica se o identificador para a chave do Registro aberta por meio de ZwOpenKey é usado corretamente por outras rotinas ZwXxx. As rotinas ZwEnumerateKey, ZwEnumerateValueKey, ZwFlushKey, ZwQueryKey, ZwQueryValueKey, ZwSetValueKey, ZwClose e ZwDeleteKey não devem ser chamadas em um identificador que não esteja aberto. O identificador também deve ser fechado antes de retornar. |
Para selecionar o conjunto de regras virtualStorport
Selecione seu projeto de driver (.vcxProj) no Microsoft Visual Studio. No menu Driver , clique em Iniciar Verificador de Driver Estático....
Clique na guia Regras . Em Conjuntos de Regras, selecione VirtualStorport.
Para selecionar o conjunto de regras padrão em uma janela do prompt de comando do desenvolvedor do Visual Studio, especifique VirtualStorport.sdv com a opção /marcar. Por exemplo:
msbuild /t:sdv /p:Inputs="/check:VirtualStorport.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).