Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Utilize essas regras para verificar se o seu driver chama corretamente as DDIs, que são de particular interesse para os drivers de miniporta virtual (VMiniport) Storport.
Nesta secção
| Tópico | Descrição |
|---|---|
Esta regra verifica se o driver não tenta liberar o mesmo bloco de memória do pool duas vezes. |
|
Esta 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. |
|
Esta regra verifica se um IRP que foi alocado pelo IoAllocateIrp será liberado pelo IoFreeIrp ou sua rotina de conclusão será definida pelo IoSetCompletionRoutine. |
|
Esta regra verifica que, ao sair da rotina HwStorFindAdapter, o campo VirtualDevice na estrutura PORT_CONFIGURATION_INFORMATION (Storport) foi definido como FALSE. A regra se aplica apenas a miniportas físicas do StorPort. |
|
Esta regra verifica que, ao sair da rotina HwStorFindAdapter , o campo VirtualDevice na estrutura PORT_CONFIGURATION_INFORMATION (Storport) foi definido como TRUE. A regra se aplica somente a miniportas virtuais StorPort. |
|
Esta regra verifica se as chamadas do driver para determinadas funções de sincronização são feitas somente enquanto o processamento normal de APC do kernel está desativado. |
|
Esta regra verifica se o identificador para uma chave do Registro criada com ZwCreateKey é subsequentemente 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. A alça também deve ser fechada antes de retornar. |
|
Esta regra verifica se o identificador para a chave do registo aberta via ZwOpenKey é posteriormente 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. A alça também deve ser fechada antes de retornar. |
Para selecionar o conjunto de regras do 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 de prompt de comando do desenvolvedor do Visual Studio, especifique VirtualStorport.sdv com a opção /check . Por exemplo:
msbuild /t:sdv /p:Inputs="/check:VirtualStorport.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32Para 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).