共用方式為


WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME函式 (wdfiotarget.h)

[適用於 KMDF 和 UMDF]

WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME函式會初始化驅動程式的WDF_IO_TARGET_OPEN_PARAMS結構,讓驅動程式可以藉由指定裝置、檔案或裝置介面的名稱來開啟 I/O 目標。 如果提供的名稱不存在,操作系統會嘗試建立它。

語法

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函式會初始化指定之WDF_IO_TARGET_OPEN_PARAMS結構的 SizeTypeTargetDeviceNameDesiredAccessCreateOptions 成員。

UMDF WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME函式會初始化指定之WDF_IO_TARGET_OPEN_PARAMS結構的 SizeTypeDesiredAccessTargetDeviceName 成員。 它會將 ShareAccess 成員設定為零。 它也會將 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;
}

規格需求

需求
目標平台 Universal
最小 KMDF 版本 1.0
最低UMDF版本 2.0
標頭 wdfiotarget.h (包含 Wdf.h)
IRQL 任何層級

另請參閱

WDF_IO_TARGET_OPEN_PARAMS

WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE

WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_NAME

WdfIoTargetOpen