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結構包含之緩衝區描述類型的WDF_MEMORY_DESCRIPTOR_TYPE型別值。

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