次の方法で共有


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構造体の SizeTypeおよび 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

WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME

WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_NAME

WdfIoTargetOpen