Como criar um log de verificação de drivers

O Programa de Certificação de Hardware do Windows exige um DVL (log de verificação do driver) para submissões de drivers. O DVL contém um resumo dos resultados de ferramentas de análise estática, como o CodeQL. O DVL não contém nenhuma informação de código-fonte. Antes de criar um DVL para o driver, rode o CodeQL, a ferramenta de análise de códigos e o verificador de drivers estáticos. Para mais informações, consulte Teste de Logotipo das Ferramentas Estáticas e CodeQL e o Teste de Logotipo das Ferramentas Estáticas.

Importante

Devido a um problema conhecido, a execução do teste Static Tools Logo no Windows HLK (Atualizado em maio de 2026) para o Windows 11, versão 25H2, resultará em um erro informando que o log de verificação de driver não atende a um requisito de versão. Execute o CodeQL e gere um DVL usando o Kit de Driver do Windows (WDK) versão 28000.1761, como de costume, e depois aplique a isenção #320241 para liberar a submissão. Esse problema será resolvido na próxima versão do HLK para Windows 11, versão 25H2.

Preparar o driver

  1. Antes de executar as ferramentas de análise de códigos, compile e vincule seu driver usando o WDK (Kit de Drivers do Windows) mais recente.
  2. Selecione Release para a configuração da solução e x64 para a plataforma da solução.

Determinar e rodar os testes necessários

Para determinar quais testes são necessários para a versão do Windows para a qual você deseja obter certificação, consulte o Teste de Logotipo das Ferramentas Estáticas.

Execute os testes a seguir, conforme necessário.

Criar registro de verificação de driver

  1. No menu Driver, selecione Create Driver Verification Log.
  2. Verifique se os arquivos Code Analysis Log, Static Driver Verifier Log e CodeQL Log foram detectados.
  3. Selecione Criar.

O log de verificação do driver tem a extensão de nome de arquivo . DVL.XML. O log é criado na pasta do projeto, por exemplo, \myDriverProject\myDriverName.DVL.XML.

O SDV executa uma recompilação limpa do driver, que remove o log de análise de código. Dessa forma, certifique-se de executar o SDV antes de executar a CA.

Quando estiver pronto para testar o driver usando o Windows Hardware Lab Kit, copie o log de verificação do driver para o diretório %systemdrive%\DVL no computador de teste. Exclua o conteúdo do diretório no computador de teste antes de copiar o novo log de verificação do driver.

Importante

Estouros de tempo, estouros de espaço e outros resultados sem sucesso no arquivo DVL são aceitáveis para submissão para certificação. Resultados não bem-sucedidos não farão com que o teste de ferramentas estáticas no HLK falhe.

Usar a janela do Prompt de Comando do Visual Studio

Você também pode criar o log de verificação de driver em uma janela de solicitação de comando do Visual Studio. Use o prompt de comando das ferramentas nativas instalado com o Visual Studio ou o Enterprise Kit de Driver do Windows (WDK) (EWDK).

msbuild.exe <vcxprojectfile> /target:dvl /p:Configuration="Release" /P:Platform=x64

Criar um log de verificação de driver fora do msbuild ou do Visual Studio

A Microsoft fornece, como parte do Kit de Driver do Windows (WDK) e do Enterprise WDK (eWDK), um componente chamado dvl.exe, que pode ser usado para gerar logs de verificação de driver (DVLs) por linha de comando. A partir das versões WDK/eWDK 21342 preview e superiores, é possível gerar um DVL a partir da linha de comando fora do contexto do msbuild ou do Visual Studio.

Gerar DVL a partir do arquivo sarif do CodeQL

  1. Encontre o dvl.exe no WDK ou em um eWDK montado. Normalmente, ele é instalado em C:\Program Files (x86)\Windows Kits\10\Tools\dvl\dvl.exe
  2. Chame dvl.exe passando o sinalizador /manualCreate, um nome de driver, uma arquitetura desejada e /sarifPath. Onde /sarifPath inclui o caminho para a pasta que contém o arquivo SARIF.
"C:\Program Files (x86)\Windows Kits\10\Tools\dvl\dvl.exe" /manualCreate <driverName> <driverArchitecture> /sarifPath <pathToSarifLocation>

Gerar um DVL a partir de um arquivo SARIF do CodeQL ou ao usar CA e SDV

  1. Coloque os resultados que devem ser consumidos para criar o DVL em um único diretório, além de qualquer arquivo vcxproj. Para que os drivers sejam certificados para o Windows Client, este arquivo é o arquivo SARIF do CodeQL. A certificação do Windows Server também pode incluir os arquivos de resultados das análises dos códigos e do SDV (verificador de drivers estáticos). Consulte os documentos de requisitos do WHCP para obter detalhes específicos sobre quais ferramentas devem ser executadas para a certificação do driver de dispositivo.

  2. Coloque os arquivos SARIF do CodeQL e os arquivos XML de análises de códigos no nível superior do diretório. Coloque o arquivo SDV DVL.xml em uma subpasta chamada sdv.

  3. Navegue até o diretório de nível superior que contém o arquivo SARIF do CodeQL na linha de comando.

  4. Encontre o dvl.exe no WDK ou em um eWDK montado.

  5. Chame dvl.exe informando a opção /manualCreate, um nome de driver e a arquitetura desejada. Por exemplo:

    Use uma das seguintes strings para sua driverArchitecture:

    • X86
    • X64
    • Braço
    • Arm64

    Observação

    Não inclua ".sys" como parte da string driverName.

  6. Inspecione o DVL para garantir que ele foi gerado corretamente.

Esse uso serve principalmente para gerar DVLs com resultados do CodeQL, mas também pode ser usado para resultados SDV e CA.

Notas de versão

As informações mais recentes sobre a ferramenta de Análise de Código, o Verificador Estático de Driver e o log de verificação do driver estão nas notas de versão do WDK na página de download do Kit de Driver do Windows (WDK).