WDF_MEMORY_DESCRIPTOR结构 (wdfmemory.h)

[适用于 KMDF 和 UMDF]

WDF_MEMORY_DESCRIPTOR 结构描述内存缓冲区。

语法

typedef struct _WDF_MEMORY_DESCRIPTOR {
  WDF_MEMORY_DESCRIPTOR_TYPE Type;
  union {
    struct {
      PVOID Buffer;
      ULONG Length;
    } BufferType;
    struct {
      PMDL  Mdl;
      ULONG BufferLength;
    } MdlType;
    struct {
      WDFMEMORY         Memory;
      PWDFMEMORY_OFFSET Offsets;
    } HandleType;
  } u;
} WDF_MEMORY_DESCRIPTOR, *PWDF_MEMORY_DESCRIPTOR;

成员

Type

一个WDF_MEMORY_DESCRIPTOR_TYPE类型的值,该值标识此WDF_MEMORY_DESCRIPTOR结构包含的缓冲区说明的类型。

u

三个结构的联合,其中一个结构描述缓冲区。

u.BufferType

如果 Type 成员为 WdfMemoryDescriptorTypeBuffer,则 BufferType 结构的成员描述缓冲区。 此结构包含以下两个成员:

u.BufferType.Buffer

指向缓冲区的指针。

u.BufferType.Length

缓冲区的长度(以字节为单位)。

u.MdlType

如果 Type 成员为 WdfMemoryDescriptorTypeMdl,则 MdlType 结构的成员描述缓冲区。 此结构包含以下两个成员:

u.MdlType.Mdl

指向内存描述符列表的指针 (MDL) 。

u.MdlType.BufferLength

缓冲区的长度(以字节为单位)。

u.HandleType

如果 Type 成员为 WdfMemoryDescriptorTypeHandle,则 HandleType 结构的成员描述缓冲区。 此结构包含以下两个成员:

u.HandleType.Memory

框架内存对象的句柄。

u.HandleType.Offsets

指向 WDFMEMORY_OFFSET 结构的指针,该结构描述由内存对象表示的缓冲区的子部分。

注解

WDF_MEMORY_DESCRIPTOR结构用作多个框架的 I/O 目标对象方法和 USB 设备对象方法的输入。

若要初始化 WDF_MEMORY_DESCRIPTOR 结构,驱动程序应调用 WDF_MEMORY_DESCRIPTOR_INIT_BUFFERWDF_MEMORY_DESCRIPTOR_INIT_MDLWDF_MEMORY_DESCRIPTOR_INIT_HANDLE

要求

要求
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
标头 wdfmemory.h (包括 Wdf.h)

另请参阅

WDFMEMORY_OFFSET

WDF_MEMORY_DESCRIPTOR_TYPE