WdfDeviceGetIoTarget 関数 (wdfdevice.h)
[KMDF と UMDF に適用]
WdfDeviceGetIoTarget メソッドは、指定したデバイスの関数またはフィルター ドライバーのローカル I/O ターゲットにハンドルを返します。
構文
WDFIOTARGET WdfDeviceGetIoTarget(
[in] WDFDEVICE Device
);
パラメーター
[in] Device
フレームワーク デバイス オブジェクトへのハンドル。
戻り値
操作が成功すると、 WdfDeviceGetIoTarget は フレームワーク I/O ターゲット オブジェクトにハンドルを返します。 指定したフレームワーク デバイス オブジェクトが PDO を表す場合、メソッドは NULL を返します。
ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。
注釈
UMDF ドライバーがドライバーによって作成された要求をローカル I/O ターゲットに送信する場合、要求にはファイル オブジェクトが関連付けされません。 HIDClass 列挙の生 PDO など、一部の下位ターゲットでは、ファイル オブジェクトが関連付けられていない要求が失敗します。 このような場合、UMDF ドライバーは WdfIoTargetOpenLocalTargetByFile を指定して、ファイル ハンドルを使用して下位スタック (ローカル ターゲットと同様) を表す I/O ターゲットを作成できます。 その結果、この I/O ターゲットに送信されたドライバーによって作成されたすべての要求は、開かれたハンドルに対応するファイル オブジェクトに関連付けられます。
これを行うには、WdfIoTargetOpen を呼び出す前に WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE 関数を呼び出します。
I/O ターゲットの詳細については、「I /O ターゲットの使用」を参照してください。
例
次のコード例では、指定したデバイスのローカル I/O ターゲットへのハンドルを取得します。
WDFIOTARGET ioTargetHandle;
ioTargetHandle = WdfDeviceGetIoTarget(device);
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
最小 KMDF バージョン | 1.0 |
最小 UMDF バージョン | 2.0 |
Header | wdfdevice.h (Wdf.h を含む) |
Library | Wdf01000.sys (KMDF);WUDFx02000.dll (UMDF) |
IRQL | <= DISPATCH_LEVEL |
DDI コンプライアンス規則 | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |