Share via


ドライバーの検証ツールのコマンド構文

コマンド プロンプト ウィンドウで検証ツール ユーティリティを実行する場合は、次の構文が使用されます。

同じ 1 行に複数のオプションを入力できます。 次に例を示します。

verifier /flags 7 /driver beep.sys disksdd.sys

Windows 11 構文

/volatile パラメーターは、一部のドライバー検証ツール /フラグ オプションと共に使用できます 。 詳細については、「揮発性設定の使用」を参照してください。

Note

/volatile パラメーターは、将来のバージョンの Windows で非推奨となる予定です。 Windows 11 では、置換オプションは /difDifEnabledRule/now オプションです。 このオプションを使用して有効にできるルール クラスについては、以下の「Windows 11 ルール クラス」セクションを参照してください。

  verifier /standard /all
  verifier /standard /driver NAME [NAME ...]
  verifier {/ruleclasses | /rc | dif} <options> [<ruleclass_1> <ruleclass_2> ...] /all
  verifier {/ruleclasses | /rc | dif} <options> [<ruleclass_1> <ruleclass_2> ...] /driver NAME [NAME ...]
  verifier /flags <options> /all
  verifier /flags <options> /driver NAME [NAME ...]
  verifier /rules [OPTION ...]
  verifier /dif [<ruleclass_1> <ruleclass_2> ...] /now /driver NAME [NAME ...]
  verifier /query
  verifier /querysettings
  verifier /bootmode [persistent | resetonbootfail | resetonunusualshutdown | oneboot]
  verifier /bc <number_of_reboots>
  verifier /reset
  verifier /faults [Probability] [PoolTags] [Applications] [DelayMins]
  verifier /faultssystematic [OPTION ...]
  verifier /log LOG_FILE_NAME [/interval SECONDS]
  verifier /volatile /flags <options>
  verifier /volatile /adddriver NAME [NAME ...]
  verifier /volatile /removedriver NAME [NAME ...]
  verifier /volatile /faults [Probability] [PoolTags] [Applications] [DelayMins]
  verifier /domain <types> <options> /driver ... [/logging | /livedump]
  verifier /logging
  verifier /livedump
  verifier /?
  verifier /help

Windows 10 構文

/volatile パラメーターと共に、ドライバーの検証ツールの一部の /flags オプションおよび /standard を使用できます。 /volatile と共に、/flags オプションの DDI 準拠の検査Power Framework 遅延ファジー テストStorport 検証、SCSI 検証 を使用することはできません。 詳細については、「揮発性設定の使用」を参照してください。

  verifier /standard /all
  verifier /standard /driver NAME [NAME ...]
  verifier {/ruleclasses | /rc} <options> [<ruleclass_1> <ruleclass_2> ...] /all
  verifier /flags <options> /all
  verifier /flags <options> /driver NAME [NAME ...]
  verifier /rules [OPTION ...]
  verifier /query
  verifier /querysettings
  verifier /bootmode [persistent | resetonbootfail | resetonunusualshutdown | oneboot]
  verifier /reset
  verifier /faults [Probability] [PoolTags] [Applications] [DelayMins]
  verifier /faultssystematic [OPTION ...]
  verifier /log LOG_FILE_NAME [/interval SECONDS]
  verifier /volatile /flags <options>
  verifier /volatile /adddriver NAME [NAME ...]
  verifier /volatile /removedriver NAME [NAME ...]
  verifier /volatile /faults [Probability] [PoolTags] [Applications] [DelayMins]
  verifier /domain <types> <options> /driver ... [/logging | /livedump]
  verifier /logging
  verifier /livedump
  verifier /?
  verifier /help

Windows 8.1 構文

/volatile パラメーターと共に、ドライバーの検証ツールの一部の /flags オプションおよび /standard を使用できます。 /volatile と共に、/flags オプションの DDI 準拠の検査Power Framework 遅延ファジー テストStorport 検証を使用することはできません。 詳細については、「揮発性設定の使用」を参照してください。

  verifier /standard /all
  verifier /standard /driver NAME [NAME ...]
  verifier /flags <options> /all
  verifier /flags <options> /driver NAME [NAME ...]
  verifier /rules [OPTION ...]
  verifier /faults [Probability] [PoolTags] [Applications] [DelayMins]
  verifier /faultssystematic [OPTION ...]
  verifier /log LOG_FILE_NAME [/interval SECONDS]
  verifier /query
  verifier /querysettings
  verifier /bootmode [persistent | disableafterfail | oneboot]
  verifier /reset
  verifier /volatile /flags <options>
  verifier /volatile /adddriver NAME [NAME ...]
  verifier /volatile /removedriver NAME [NAME ...]
  verifier /volatile /faults [Probability] [PoolTags] [Applications] [DelayMins]
  verifier /?

Windows 8、Windows 7 構文

/volatile パラメーターと共に、ドライバーの検証ツールの一部の /flags オプションおよび /standard を使用できます。 /volatile と共に、/flags オプションの DDI 準拠の検査Power Framework 遅延ファジー テストStorport 検証SCSI 検証 を使用することはできません。 詳細については、「揮発性設定の使用」を参照してください。

verifier [/volatile] [/standard | /flags Options ] [ /all | /driver DriverList ]
verifier /volatile /faults [Probability PoolTags Applications DelayMins] /driver DriverList
verifier /volatile {/adddriver | /removedriver} DriverList
verifier /reset
verifier /querysettings
verifier /query
verifier /log LogFileName [/interval Seconds]
verifier /?

パラメーター

Verifier コマンド ライン構文

/all 次の起動後に、インストールされているすべてのドライバーを検証するようにドライバーの検証ツール ユーティリティに指示します。

/bc <number_of_reboots> 検証をアクティブにする再起動の数を設定します。

このオプションでは、ResetOnUnusualShutdown ブート モードが自動的に設定されます。

/bootmodemode 再起動後にドライバーの検証ツール ユーティリティの設定を有効にするかどうかを制御します。 このオプションを設定または変更するには、コンピューターを再起動する必要があります。

Bootmode 説明

persistent

再起動の回数が多くてもドライバーの検証ツールの設定が保持されるようにします (有効なまま)。 これが既定の設定です。

resetonbootfail

システムの起動に失敗した場合、後続の再起動のためにドライバー検証ツールを無効にします。

oneboot

次にコンピューターが起動されるときにだけ、ドライバーの検証ツールの設定を有効にします。 その後の再起動では、ドライバーの検証ツールは無効になります。

resetonunusualshutdown

(Windows 10 ビルド 1709 で導入)ドライバー検証ツールは、通常とは異なるシャットダウンが発生するまで保持されます。 省略形の "rous" を使用できます。

/difDifEnabledRule DIF 対応ルールを使用してチェックを有効にします。 チェックは、次回システムが再起動されるときに有効になります。 Windows 11で追加されました。

/difDifEnabledRule/now は、DIF 対応ルールを用いて即座にチェックを有効化します。 再起動を必要とせずに、ルール クラスをすぐに有効にします。 このオプションは、ルール クラスがまだ実行されていない場合にのみ有効です。 即時アクティブ化が可能なルール クラスについては、Windows 11 ルール クラスの説明を参照してください。

/driver ドライバーリストは、検証するドライバーを 1 つ以上指定します。 Driverlist は、Driver.sys のような、バイナリ名によるドライバーのリストです。 各ドライバー名を区切るにはスペースを使用します。 ワイルドカード値 (たとえば、n*.sys) は、サポートされていません。

/driver.excludeDriverList は、検証から除外するドライバーを 1 つ以上指定します。 このパラメーターは、すべてのドライバーが検証対象として選択されている場合にのみ適用されます。 Driverlist は、Driver.sys のような、バイナリ名によるドライバーのリストです。 各ドライバー名を区切るにはスペースを使用します。 ワイルドカード値 (たとえば、n*.sys) は、サポートされていません。

/faults ドライバーの検証ツール ユーティリティで低リソースのシミュレーション機能を有効にします。 /flags 0x4 の代わりに /faults を使用できます。 ただし、/flags 0x4/flags 0x4 サブパラメーターとは使用できません)。

/faults パラメーターの次のサブパラメーターを使用して、低リソースのシミュレーションを構成することができます。

サブパラメータ 説明

確率

ドライバーの検証ツール ユーティリティで特定の割り当てが失敗する確率を指定します。 10,000 回のうちドライバーの検証ツール ユーティリティが割り当てに失敗する回数を表す値 (10 進数または 16 進数形式) を入力します。 既定値の 600 は、600/10000 つまり 6% を意味します。

プール タグ

ドライバーの検証ツール ユーティリティが失敗する可能性がある割り当てを、指定したプール タグを持つ割り当てに制限します。 ワイルドカード文字 (*) を使って、複数のプール タグを表すことができます。 複数のプール タグのリストを指定するには、タグをスペースで区切ります。 既定では、すべての割り当てが失敗する可能性があります。

アプリケーション

ドライバーの検証ツールが失敗する可能性がある割り当てを、指定されたプログラムへの割り当てに制限します。 実行可能ファイルの名前を入力します。 プログラムのリストを指定するには、プログラム名をスペースで区切ります。 既定では、すべての割り当てが失敗する可能性があります。

DelayMins

ドライバーの検証ツール ユーティリティが意図的に割り当てを失敗させない、起動後の時間 (分単位) を指定します。 この遅延により、ドライバーが読み込まれ、テストが開始される前にシステムが安定します。 値 (10 進数または 16 進数) を入力します。 既定値は 7 (分) です。

/faultssystematic 体系的な低リソースのシミュレーションのオプションを指定します。 体系的な低リソースのシミュレーションのオプションを選ぶには、0x40000フラグを使用します。

OPTION 説明

enableboottime

コンピューターの再起動をまたぐフォールト挿入を有効にします。

disableboottime

コンピューターの再起動をまたぐフォールト挿入を無効にします (これは既定の設定です)。

recordboottime

コンピューターの再起動をまたがる what if モードでのフォールト挿入を有効にします。

resetboottime

コンピューターの再起動をまたがるフォールト挿入を無効にして、スタック除外リストをクリアします。

enableruntime

動的にフォールト挿入を有効にします。

disableruntime

動的にフォールト挿入を無効にします。

recordruntime

動的に what if モードでのフォールト挿入を有効にします。

resetruntime

フォールト挿入を動的に無効にして、それまでのフォールトのあるスタック リストをクリアします。

querystatistics

現在のフォールト挿入の統計を表示します。

incrementcounter

フォールトが挿入されたことを示すために使用されるテスト成功カウンターを増分します。

getstackid COUNTER

指定された挿入されたスタック識別子を取得します。

excludestack STACKID

スタックをフォールト挿入から除外します。

/flagsオプションは、次回の再起動後に、指定したオプションをアクティブにします。 この値は、10 進数または 16 進数 (0x プレフィックスを使用) の形式で入力できます。 次の値の任意の組み合わせを使用できます。

10 進法 16 進数 標準設定 オプション

1

0x1 (ビット 0)

x

特別なプール

2

0x2 (ビット 1)

x

強制 IRQL 検査

4

0x4 (ビット 2)

低リソースのシミュレーション

8

0x8 (ビット 3)

x

プールのトラック

16

0x10 (ビット 4)

x

I/O の検証

32

0x20 (ビット 5)

x

デッドロックの検出

64

0x40 (ビット 6)

拡張 I/O 検証 I/O 検証を選択すると、このオプションが自動的にアクティブ化されます。

128

0x80 (ビット 7)

x

DMA 検証

256

0x100 (ビット 8)

x

セキュリティの検査

512

0x200 (ビット 9)

保留中の I/O 要求を強制する

1024

0x400 (ビット 10)

IRP ログ

2048

0x800 (ビット 11)

x

その他の検査

8192

0x2000 (ビット 13)

スタック の不変MDLチェック (Windows 8以降)

16384

0x4000 (ビット 14)

ドライバー向けスタック の不変MDLチェック (Windows 8以降)

32768

0x8000 (ビット 15)

Power Framework Delay Fuzzing (Windows 8 以降) (Windows 10 ビルド 19042 以降では非推奨)

65536

0x10000 (ビット 16)

ポート/ミニポート インターフェイスのチェック (Windows 10 以降)

131072

0x20000 (17ビット)

x

DDI コンプライアンス チェック (Windows 8 以降)

262144

0x40000 (ビット 18)

体系的な低リソース シミュレーション (Windows 8.1 以降) (Windows 10 ビルド 19042 以降では非推奨)

524288

0x80000 (ビット 19)

DDI コンプライアンスチェック (追加) (Windows 8.1 以降) (Windows 10 ビルド 19042 以降では非推奨)

2097152

0x200000 (ビット 21)

NDIS/WIFI 検証 (Windows 8.1 以降)

8388608

0x800000 (ビット 23)

カーネル同期遅延ファジイング (Windows 8.1 以降) (Windows 10 ビルド 19042 以降では非推奨)

16777216

0x1000000 (ビット 24)

VM スイッチの検証 (Windows 8.1 以降)

33554432

0x2000000 (ビット 25)

コード整合性チェック (Windows 10 以降)

この方法を使用して、SCSI 検証または Storport 検証のオプションをアクティブにすることはできません。 詳細については、「Storport の検証」を参照してください。

/flagsVolatileOptions 再起動せずにすぐに変更されるドライバー検証ツールのオプションを指定します。

/volatile パラメーターは、すべての /flags 値と共に使用できます)。

この値は、10 進数または 16 進数 (0x プレフィックスを使用) の形式で入力してください。

次の値の任意の組み合わせを利用できます。

16 進数 オプション

0x00000004 (ビット 2)

ランダム化された低リソース シミュレーション

0x00000020 (ビット 5)

デッドロックの検出

0x00000080 (ビット 7)

DMA チェック

0x00000200 (ビット 9)

保留中の I/O 要求を強制する

0x00000400 (ビット 10)

IRP ログ

/ruleclasses または /rc<ruleclass_1><ruleclass_2> ... <ruleclass_k>

ruleclasses パラメーターは、Windows バージョン 1803 以降で使用できます。

ruleclasses パラメーターには、上記の /flags パラメーターよりも大きな一連の検証クラスが含まれます。 /flags は 32 ビットのビットマップ式に制限されていますが、このオプションには 32 を超える検証クラスを含めることができます。 各正の 10 進整数は、検証クラスを表します。 各クラス ID をスペース文字で区切ることで、複数のクラスを表すことができます。 次のルール クラス ID を使用できます。

標準ルール クラス

Value Rule
1 特別なプール
2 強制 IRQL 検査
4 プールのトラック
5 I/O の検証
6 デッドロックの検出
8 DMA チェック
9 セキュリティの検査
12 その他の検査
18 DDI 準拠の検査
34 WDF の検証
37 ファイル システム フィルターの検証 (5)

その他のルール クラス

これらのルール クラスは、特定のシナリオのテストを目的としています。 (*)"I/O 検証が必要 (5)" と マークされた規則クラスを使用して自動的に有効にします。 個々のルールの無効化する(**)サポート マークが付いたルール クラス。 (***)マークが付けられたルール クラスは既定でログ モードであり、違反時にクラッシュするには /onecheck が必要です。

(!)マークがついた フラグでは、DIF モード (ルール クラス 36) を有効にする必要があります。

Value Rule
3 ランダム化された低リソース シミュレーション
10 保留中の I/O 要求を強制する (*)
11 IRP ログ (*)
14 スタックの不変 MDL チェック (*)
15 ドライバーの不変 MDL チェック (*)
16 Power Framework 遅延ファジー テスト
17 ポート/ミニポート インターフェイス チェック
19 体系的な低リソースのシミュレーション
20 DDI コンプライアンス チェック (追加)
22 NDIS/WIFI 検証 (**)
24 カーネル同期遅延ファジー テスト
25 VM スイッチ検証
26 コードの整合性チェック
33 ドライバーの分離チェック (***, !)
36 DIF のモード

Windows 11 ルール クラス

Windows 11 以降では、次の標準規則クラスを使用できます。 /standard オプションを使用すると、これらのルール クラスがすべて有効になります。

/now 列は、/difDifEnabledRule/now/now オプションを使用して再起動せずに有効にできるルール クラスを示します。

標準ルール クラス

Value Rule /now
1 特別なプール はい
2 強制 IRQL 検査 はい
4 プールのトラック はい
5 I/O の検証 はい
6 デッドロックの検出 いいえ
8 DMA チェック いいえ
9 セキュリティの検査 はい
12 その他の検査 はい
18 DDI 準拠の検査 はい
34 WDF の検証 いいえ
37 ファイル システム フィルターの検証 いいえ

ルール クラス 37 (ファイル システム フィルターの検証) では、ルール クラス 5 (I/O 検証) も有効になっている必要があることに注意してください。 この規則クラスの詳細については、「 ファイル システム フィルターの検証 」を参照してください。

その他のルール クラス

次のルール クラス ID も使用できます。

  • /now 列は、/difDifEnabledRule/now/now オプションを使用して再起動せずに有効にできるルール クラスを示します。
  • [ルール クラスが必要 ] 列は、指定されたルール クラスを使用するためにどのルール クラスも有効にする必要があることを示します。 /dif コマンドには ルール クラス 36 (DIF モード) が自動的に含まれますが、/ruleclasses/rc には含まれていないことに注意してください。
  • 個々のルールの無効化する(**)サポート マークが付いたルール クラス。
  • (***)マークが付けられたルール クラスは既定でログ モードであり、違反時にクラッシュするには /onecheck オプションが必要です。
Value Rule /now ルール クラスが必要
3 ランダム化された低リソース シミュレーション いいえ なし
10 保留中の I/O 要求を強制する いいえ 5
11 IRP ログ いいえ 5
14 スタックの不変 MDL チェック (*) いいえ 5
15 ドライバーの不変 MDL チェック (*) いいえ 5
16 Power Framework 遅延ファジー テスト いいえ なし
17 ポート/ミニポート インターフェイス チェック いいえ なし
19 体系的な低リソースのシミュレーション はい 36
20 DDI コンプライアンス チェック - 追加 はい なし
22 NDIS/WIFI 検証(**) いいえ なし
24 カーネル同期遅延ファジー テスト いいえ なし
25 VM スイッチ検証 いいえ なし
26 コードの整合性チェック いいえ なし
33 ドライバーの分離チェック(***) いいえ 36
36 DIF のモード はい なし

/log\LogFileName [/interval|Seconds] は、LogFileName という名前のログ ファイルを作成します。 ドライバー検証ツールは、このファイルに統計を定期的に書き込みます。 詳細については、「ログ ファイルの作成」を参照してください。

検証ツール /log コマンドをコマンド ラインで入力した場合、コマンド プロンプトには戻りません。 ログ ファイルを閉じてプロンプトに戻るには、Ctrl + C キーを使用します。 再起動後にログを作成するには、verifier /log コマンドをもう一度送信する必要があります。

オプション 説明
/interval 秒 ログ ファイルの更新間隔を分単位で指定します。 既定値は 30 秒です。

/rules オプション 無効にできるルールのオプション (詳細)。

オプション 説明

クエリ

制御可能なルールの現在の状態が表示されます。

reset

すべてのルールを既定の状態にリセットします。

既定のID

ルール ID を既定の状態に設定します。 サポートされているルールの場合、ルール IDバグ チェック 0xC4 (DRIVER_VERIFIER_DETECTED_VIOLATION) のパラメーター 1 の値です。

disableID

指定したルール ID を無効にします。 サポートされているルールの場合、ルール IDバグ チェック 0xC4 (DRIVER_VERIFIER_DETECTED_VIOLATION) のパラメーター 1 の値です。

/standard 次回の再起動後に、ドライバーの検証ツールの "標準" つまり既定のオプションをアクティブにします。 標準オプションは 、[Special Pool]、[Force IRQL Checking]、[Pool Tracking]、[I/O Verification]、[Deadlock Detection]、[DMA Verification] です。 および WDF 検証 標準オプションには、セキュリティ チェック、その他のチェックDDI コンプライアンス チェックも含まれます。

Note

Windows 10 バージョン 1803 以降では、 /flags 0x209BB を使用しても WDF の検証は自動的に有効になりません。 WDF の検証も含めて標準のオプションを有効にするには、/standard 構文を使用します。

/stop 検証を停止するために 、'/dif /now' で有効になっているルール クラスを無効にします。

/volatile /flags コンピューターを再起動せずに設定を変更します。 volatile の設定は直ちに有効になります。 /volatile パラメーターと /flags パラメーターを使用すると、再起動せずに一部のオプションを有効または無効にすることができます。 また、ドライバーの検証ツール ユーティリティがすでに実行されていない場合でも、/volatile/adddriver および /removedriver パラメーターを使用して、再起動せずにドライバーの検証を開始または停止することもできます。

再起動せずにすぐに変更されるドライバー検証ツールのオプションを指定します。 volatile では、次のフラグのみを使用できます。

0x00000004 (ビット 2) - ランダム化された低リソース シミュレーション 0x00000020 (ビット 5) - デッドロック検出0x00000080 (ビット 7) - DMA チェック0x00000200 (ビット 9) - 保留中の I/O 要求の0x00000400の強制 (ビット 10) - IRP ログ記録

詳細については、「揮発性設定の使用」を参照してください。

オプション 説明

/adddriverVolatileDriverList

指定したドライバーを揮発性の設定に追加します。 複数のドライバーを指定するには、名前のリストをスペースで区切ります。 ワイルドカード値 (たとえば、n.sys) は、サポートされていません。 詳細については、「揮発性設定の使用」を参照してください。

/removedriverVolatileDriverList

指定したドライバーを揮発性の設定から削除します。 複数のドライバーを指定するには、名前のリストをスペースで区切ります。 ワイルドカード値 (たとえば、n.sys) は、サポートされていません。 詳細については、「揮発性設定の使用」を参照してください。

/reset すべてのドライバー検証ツールの設定をクリアします。 次のブート後、ドライバーは検証されません。

/querysettings 次の起動の後でアクティブにされるオプションと検証されるドライバーの概要を表示します。 この表示には、/volatile パラメーターを使用して追加されたドライバーとオプションは含まれません。 これらの設定を表示する他の方法については、「ドライバーの検証ツールの設定の表示」をご覧ください。

/query ドライバーの検証ツール ユーティリティの現在のアクティビティの概要を表示します。 表示の Level フィールドは、/volatile パラメーターで設定されたオプションの 16 進数の値です。 各統計の説明については、「グローバル カウンターの監視」と「個別カウンターの監視」をご覧ください。

/domainTypes **** Options 検証ツール拡張設定を管理します。 次の検証ツール拡張機能の種類がサポートされています。

types 説明

wdm

WDM ドライバー用の検証ツール拡張機能を有効にします。

ndis

ネットワーク ドライバー用の検証ツール拡張機能を有効にします。

ks

カーネル モード ストリーミング ドライバー用の検証ツール拡張機能を有効にします。

audio

オーディオ ドライバー用の検証ツール拡張機能を有効にします。

次の拡張機能オプションがサポートされています。

[オプション] 説明

rules.default

選択した検証ツール拡張機能の既定の検証ルールを有効にします。

rules.all

選択した検証ツール拡張機能のすべての検証ルールを有効にします。

/logging 選択した検証ツール機能拡張によって検出された違反のあるルールの、ログ記録を有効にします。

/livedump 選択した検証ツール機能拡張によって検出された違反のあるルールの、ライブ メモリ ダンプ収集を有効にします。

/? コマンド ライン ヘルプを表示します。

これらのコマンドの使用方法の詳細については、「ドライバー検証ツールの制御ドライバー検証ツールの監視」を参照してください。

/help コマンドラインのヘルプを表示します。

これらのコマンドの使用方法の詳細については、「ドライバー検証ツールの制御ドライバー検証ツールの監視」を参照してください。

リターン コード

ドライバーの検証ツールの実行後には、次の値が返されます。

0: EXIT_CODE_SUCCESS

1: EXIT_CODE_ERROR

2: EXIT_CODE_REBOOT_NEEDED