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;
}

要求

要求
目标平台 通用
最低 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