WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE関数 (wdfiotarget.h)
[KMDF にのみ適用]
WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE関数は、ドライバーのWDF_IO_TARGET_OPEN_PARAMS構造体を初期化して、ドライバーが Windows ドライバー モデル (WDM) デバイス オブジェクトを指定してリモート I/O ターゲットを開くことができるようにします。
構文
void WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE(
[out] PWDF_IO_TARGET_OPEN_PARAMS Params,
[in] PDEVICE_OBJECT DeviceObject
);
パラメーター
[out] Params
関数が初期化するドライバーによって割り当てられた WDF_IO_TARGET_OPEN_PARAMS 構造体へのポインター。
[in] DeviceObject
WDF_IO_TARGET_OPEN_PARAMS構造体の DeviceObject メンバーの値として使用される、DEVICE_OBJECT構造体へのポインター。
戻り値
なし
解説
WDF_IO_TARGET_OPEN_PARAMS構造体は、WdfIoTargetOpen メソッドへの入力として使用されます。
WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE関数は、指定したWDF_IO_TARGET_OPEN_PARAMS構造体の Size、Type、および TargetDeviceObject メンバーを初期化します。
通常、ドライバーは、ドライバーが WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE を呼び出した後、WDF_IO_TARGET_OPEN_PARAMS構造体の TargetFileObject メンバーを設定します。
I/O ターゲットの詳細については、「I /O ターゲットの使用」を参照してください。
例
次のコード例では、I/O ターゲット オブジェクトを作成し、DEVICE_OBJECT構造体を指定してターゲットを開きます。 サンプル ドライバーは、 NdisMGetDeviceProperty (図示せず) を呼び出して、DEVICE_OBJECT構造体を取得します。
WDF_IO_TARGET_OPEN_PARAMS openParams;
NTSTATUS ntStatus;
ntStatus = WdfIoTargetCreate(
Adapter->WdfDevice,
WDF_NO_OBJECT_ATTRIBUTES,
&Adapter->IoTarget
);
if (!NT_SUCCESS(ntStatus)) {
DEBUGP(MP_ERROR, ("WdfIoTargetCreate failed 0x%x\n", ntStatus));
break;
}
WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE(
&openParams,
Adapter->NextDeviceObject
);
ntStatus = WdfIoTargetOpen(Adapter->IoTarget,
&openParams);
if (!NT_SUCCESS(ntStatus)) {
DEBUGP(MP_ERROR, ("WdfIoTargetOpen failed 0x%x\n", ntStatus));
break;
}
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
最小 KMDF バージョン | 1.0 |
Header | wdfiotarget.h (Wdf.h を含む) |
IRQL | 任意のレベル |
こちらもご覧ください
WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME