ドライバー検証ログの作成

Windows ハードウェア認定プログラムでは、ドライバーの申請にドライバー検証ログ (DVL) が必要です。 DVL には、コード分析 (CA)、静的ドライバー検証ツール (SDV)、および CodeQL からの結果の概要を含めることができます。 DVL にはソース コード情報が含まれていません。 ドライバーの DVL を作成する前に、必要に応じて CodeQL、コード分析ツール、静的ドライバー検証ツールを実行する必要があります。 詳細については、「静的ツール ロゴ テストと CodeQL」および「静的ツール ロゴ テスト」を参照してください。

ドライバー検証ツール ログを作成するには

ドライバーを準備する

  1. コード分析ツールを実行する前に、最新の Windows Driver Kit (WDK) を使用してドライバーをビルドしてリンクできることを確認してください。
  2. ドライバー ソリューションでは、ソリューション構成としてリリース構成、ソリューション プラットフォームとして x64 が選択されていることを確認します。

必要なテストを決定して実行する

  1. 認定する Windows のバージョンに必要なテストを決定するには、Static Tools ロゴ テスト を参照してください。

必要に応じて、次のテストを実行します。

ドライバー検証ログを作成する

  1. ドライバー検証ログを作成します。 [ドライバー] メニューの [Create Driver Verification Log...]\(ドライバーの検証ツール ログの作成...\) を選びます。

  2. Code Analysis ログ、静的ドライバー検証ツール ログ、および CodeQL ログのファイルが検出されていることを確認します。 [作成] を選択します

ドライバー検証ログのファイル名拡張子は .DVL.XML です。 ログは、プロジェクト フォルダーに作成されます (例: \myDriverProject\myDriverName.DVL.XML)。

SDV ではドライバーのクリーン リビルドが実行されます。これにより、Code Analysis ログが削除されます。 そのため、CA を実行する前に SDV を実行してください。

Windows Hardware Lab Kit を使ってドライバーをテストする準備ができたら、ドライバー検証ツール ログをテスト コンピューターの %systemdrive%\DVL ディレクトリにコピーする必要があります。 新しいドライバー検証ログをコピーする前に、テスト コンピューター上のディレクトリの内容を必ず削除してください。

解説

コード分析ツール、静的ドライバー検証ツール、およびドライバー検証ログに関する最新情報については、WDK リリース ノートを参照してください。 リリース ノートは、Windows Driver Kit (WDK) のダウンロード ページから入手できます。

重要

DVL ファイルでタイムアウト、領域不足などの失敗した結果があっても、認定用に申請できます。 これにより、HLK の静的ツール テストに不合格になることはありません。

Visual Studio のコマンド プロンプト ウィンドウ

Visual Studio と共にインストールされた Visual Studio Native Tools コマンド プロンプトまたは Enterprise Windows Driver Kit (EWDK) を使用して、Visual Studio コマンド プロンプト ウィンドウからドライバー検証ログを作成することもできます。

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

msbuild または Visual Studio の外部でのドライバーの検証ツール ログの作成

Microsoft は、Windows Driver Kit (WDK)Enterprise WDK (eWDK) の一部として、コマンド ラインを介してドライバーの検証ツール ログ (DVL) を生成するために使用できる dvl.exe と呼ばれるコンポーネントを提供しています。 WDK/eWDK preview バージョン21342 以降では、msbuild または Visual Studio のコンテキストの外部で、コマンド ラインから DVL を生成できます。 コマンド ラインを使用して DVL を作成するには、下の手順に従います。

  1. DVL を作成するために使用する必要がある結果を、vcxproj ファイルとともに単一のディレクトリに配置します。 通常、Windows クライアントの認定を目的としたドライバーの場合、これは CodeQL SARIF ファイルです。 Windows Server 認定の場合は、Code Analysis と静的ドライバー検証ツール (SDV) の結果ファイルが含まれていることもあります。 デバイス ドライバー認定のために実行する必要があるツールの詳細については、WHCP の要件に関するドキュメントをご確認ください。
  2. CodeQL SARIF ファイルと Code Analysis の XML ファイルは、最上位のディレクトリに配置する必要があります。 SDV DVL.xml ファイルは、"sdv" サブフォルダーに配置する必要があります。
  3. コマンド ラインから、CodeQL SARIF ファイルが格納されている最上位のディレクトリに移動します。
  4. WDK またはマウントされている eWDK で dvl.exe を見つけます。
  5. /manualCreate フラグ、ドライバー名、および目的のアーキテクチャを渡して、dvl.exe を呼び出します。 次に例を示します。
"C:\Program Files (x86)\Windows Kits\10\Tools\dvl\dvl.exe" /manualCreate <driverName> <driverArchitecture>

driverArchitecture 文字列には、次のいずれかの文字列を使用する必要があります。

  • X86
  • X64
  • Arm
  • Arm64

".sys" を、driverName の文字列の一部として含めないでください

  1. 生成された DVL を調べて、正しく生成されたことを確認します。

この使用方法は主に、CodeQL の結果を使用して DVL を生成することを目的としていますが、SDV および CA の結果にも使用できます。