次の方法で共有


Usb の規則セット (KMDF)

これらの規則を使用して、ドライバーが USB デバイス用のいくつかの特殊な KMDF メソッドを正しく処理することを確認します。

このセクションの内容

裁判官 説明

FailD0EntryIoTargetState

FailD0EntryIoTargetStateルールは、EvtDeviceD0Entry 内で起動された USB 連続リーダーの I/O ターゲットが、EvtDeviceD0Entry が失敗した場合に、同じコールバックから適切に停止するように指定します。

UsbContReader

UsbContReader ルールは、ドライバーの EvtDevicePrepareHardware イベント コールバック関数内で継続的リーダーが正しく構成されていることを指定します。このコールバック関数では、ドライバーが WdfUsbTargetPipeConfigContinuousReader メソッドを呼び出します。

UsbDeviceCreate

UsbDeviceCreate ルールは、WdfUsbTargetDeviceCreate メソッドと WdfUsbTargetDeviceCreateWithParameters メソッドが EvtDevicePrepareHardware イベント コールバック関数の外部で呼び出されないことを指定します。

UsbDeviceCreateFail

UsbDeviceCreateFail 規則は、WDFUSBDEVICE オブジェクトの作成が失敗した場合にエラー状態で EvtDevicePrepareHardware イベント コールバック関数からドライバーが返されることを指定します。

UsbDeviceCreateTarget

UsbDeviceCreateTarget ルールは、現在デバイス コンテキスト内にある WDFUSBDEVICE オブジェクトがリークされている間、複数の WDFUSBDEVICE オブジェクトが作成されないことを指定します。

Irql ルール セットを選択するには

  1. Microsoft Visual Studio でドライバー プロジェクト (.vcxProj) を選択します。 Driver メニューから Launch Static Driver Verifier… をクリックします。

  2. [ルール] タブをクリックします。[ルール セット] で、[Irql] を選択します。

    Visual Studio の開発者コマンド プロンプト ウィンドウから既定のルール セットを選択するには、Locking.sdv オプションで /check を指定します。 次に例を示します。

    msbuild /t:sdv /p:Inputs="/check:Usb.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
    

    詳細については、「静的ドライバー検証ツールを使用して、ドライバーの欠陥を検出する」と「静的ドライバー検証ツールコマンド (MSBuild)」を参照してください。