情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

WDF_MEMORY_DESCRIPTOR_INIT_HANDLE 関数

The WDF_MEMORY_DESCRIPTOR_INIT_HANDLE function initializes a WDF_MEMORY_DESCRIPTOR structure so that it describes a specified framework memory object.

構文

VOID WDF_MEMORY_DESCRIPTOR_INIT_HANDLE(
  __out     PWDF_MEMORY_DESCRIPTOR Descriptor,
  __in      WDFMEMORY Memory,
  __in_opt  PWDFMEMORY_OFFSET Offsets
);

パラメーター

Descriptor [out]

A pointer to a WDF_MEMORY_DESCRIPTOR structure.

Memory [in]

A handle to a framework memory object.

Offsets [in, optional]

A pointer to a WDFMEMORY_OFFSET structure. This parameter is optional and can be NULL.

戻り値

None

解説

The WDF_MEMORY_DESCRIPTOR_INIT_HANDLE function zeros the specified WDF_MEMORY_DESCRIPTOR structure and sets the structure's Type member to WdfMemoryDescriptorTypeHandle. Then it sets the structure's u.HandleType.Memory and u.HandleType.Offsets members to the values that the Memory and Offsets parameters specify, respectively.

The following code example obtains a handle to a framework memory object that represents an I/O request's input buffer. The example uses the memory object handle to initialize a WDF_MEMORY_DESCRIPTOR structure. Then, the example initializes a WDF_USB_CONTROL_SETUP_PACKET structure and sends a USB control transfer request to an I/O target.

WDFMEMORY  memory;
WDF_MEMORY_DESCRIPTOR  memDesc;
WDF_USB_CONTROL_SETUP_PACKET  controlSetupPacket;
NTSTATUS  status;

status = WdfRequestRetrieveInputMemory(
                                       Request,
                                       &memory
                                       );
if (!NT_SUCCESS(status)) {
    break;
}
WDF_MEMORY_DESCRIPTOR_INIT_HANDLE(
                                  &memDesc,
                                  memory,
                                  NULL
                                  );

WDF_USB_CONTROL_SETUP_PACKET_INIT_VENDOR(
                                         &controlSetupPacket,
                                         BmRequestHostToDevice,
                                         BmRequestToDevice,
                                         USBFX2LK_SET_BARGRAPH_DISPLAY,
                                         0,
                                         0
                                         );

status = WdfUsbTargetDeviceSendControlTransferSynchronously(
                                  pDevContext->UsbDevice,
                                  NULL,
                                  NULL,
                                  &controlSetupPacket,
                                  &memDesc,
                                  (PULONG)&bytesTransferred
                                  );

要件

バージョン

Available in version 1.0 and later versions of KMDF.

ヘッダー

Wdfmemory.h (includeWdf.h)

参照

WDF_MEMORY_DESCRIPTOR
WDF_MEMORY_DESCRIPTOR_INIT_BUFFER
WDF_MEMORY_DESCRIPTOR_INIT_MDL
WDFMEMORY_OFFSET

 

 

コミュニティの追加

表示:
© 2015 Microsoft