Usb の規則セット (KMDF)
これらの規則を使用して、ドライバーが USB デバイス用のいくつかの特殊な KMDF メソッドを正しく処理することを確認します。
このセクションの内容
裁判官 | 説明 |
---|---|
FailD0EntryIoTargetStateルールは、EvtDeviceD0Entry 内で起動された USB 連続リーダーの I/O ターゲットが、EvtDeviceD0Entry が失敗した場合に、同じコールバックから適切に停止するように指定します。 |
|
UsbContReader ルールは、ドライバーの EvtDevicePrepareHardware イベント コールバック関数内で継続的リーダーが正しく構成されていることを指定します。このコールバック関数では、ドライバーが WdfUsbTargetPipeConfigContinuousReader メソッドを呼び出します。 |
|
UsbDeviceCreate ルールは、WdfUsbTargetDeviceCreate メソッドと WdfUsbTargetDeviceCreateWithParameters メソッドが EvtDevicePrepareHardware イベント コールバック関数の外部で呼び出されないことを指定します。 |
|
UsbDeviceCreateFail 規則は、WDFUSBDEVICE オブジェクトの作成が失敗した場合にエラー状態で EvtDevicePrepareHardware イベント コールバック関数からドライバーが返されることを指定します。 |
|
UsbDeviceCreateTarget ルールは、現在デバイス コンテキスト内にある WDFUSBDEVICE オブジェクトがリークされている間、複数の WDFUSBDEVICE オブジェクトが作成されないことを指定します。 |
Irql ルール セットを選択するには
Microsoft Visual Studio でドライバー プロジェクト (.vcxProj) を選択します。 Driver メニューから Launch Static Driver Verifier… をクリックします。
[ルール] タブをクリックします。[ルール セット] で、[Irql] を選択します。
Visual Studio の開発者コマンド プロンプト ウィンドウから既定のルール セットを選択するには、Locking.sdv オプションで /check を指定します。 次に例を示します。
msbuild /t:sdv /p:Inputs="/check:Usb.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
詳細については、「静的ドライバー検証ツールを使用して、ドライバーの欠陥を検出する」と「静的ドライバー検証ツールコマンド (MSBuild)」を参照してください。