[KMDF と UMDF に適用]
WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME 関数は、ドライバーがデバイス、ファイル、またはデバイス インターフェイスの名前を指定して I/O ターゲットを開くことができるように、ドライバーの WDF_IO_TARGET_OPEN_PARAMS 構造体を初期化します。 指定された名前が存在しない場合、オペレーティング システムは名前の作成を試みます。
構文
void WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME(
[out] PWDF_IO_TARGET_OPEN_PARAMS Params,
[in] PCUNICODE_STRING TargetDeviceName,
[in] ACCESS_MASK DesiredAccess
);
パラメーター
[out] Params
ドライバーによって割り当てられた WDF_IO_TARGET_OPEN_PARAMS 構造体へのポインター。関数が初期化します。
[in] TargetDeviceName
WDF_IO_TARGET_OPEN_PARAMS 構造体の TargetDeviceName メンバーの値。
[in] DesiredAccess
WDF_IO_TARGET_OPEN_PARAMS 構造体の DesiredAccess メンバーの値。
戻り値
なし
注釈
TargetDeviceName に既に存在するファイルの名前が指定されている場合、システムは既存のファイルを置き換えます。 ファイルが存在しない場合は、システムによって作成されます。
WDF_IO_TARGET_OPEN_PARAMS 構造体は、WdfIoTargetOpen メソッドへの入力として使用されます。
KMDF WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME 関数は、サイズ、型、TargetDeviceName、DesiredAccess、および指定した WDF_IO_TARGET_OPEN_PARAMS 構造体の createOptions メンバーを初期化します。
UMDF WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME 関数は、Size、Type、DesiredAccess、および TargetDeviceName 指定した WDF_IO_TARGET_OPEN_PARAMS 構造体のメンバーを初期化します。 ShareAccess メンバーを 0 に設定します。 また、FileAttributes メンバーを FILE_ATTRIBUTE_NORMALに設定します。
I/O ターゲットの詳細については、「I/O ターゲットの使用」を参照してください。
例示
次のコード例では、I/O ターゲット オブジェクトを作成し、ファイル名を指定してターゲットを開きます。
UNICODE_STRING fileName;
RtlInitUnicodeString(
&fileName,
(PCWSTR)PROTOCOL_INTERFACE_NAME
);
status = WdfIoTargetCreate(
Adapter->WdfDevice,
WDF_NO_OBJECT_ATTRIBUTES,
&Adapter->IoTarget
);
if (!NT_SUCCESS(status)) {
DEBUGP(MP_ERROR, ("WdfIoTargetCreate failed 0x%x\n", status));
return status;
}
WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME(
&openParams,
&fileName,
STANDARD_RIGHTS_ALL
);
status = WdfIoTargetOpen(
Adapter->IoTarget,
&openParams
);
if (!NT_SUCCESS(status)) {
DEBUGP(MP_ERROR, ("WdfIoTargetOpen failed 0x%x\n", status));
return status;
}
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | 普遍 |
最小 KMDF バージョン | 1.0 |
UMDF の最小バージョン を する | 2.0 |
ヘッダー | wdfiotarget.h (Wdf.h を含む) |
IRQL | 任意のレベル |
こちらもご覧ください
WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE
WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_NAME
WdfIoTargetOpen を する