Bagikan melalui


fungsi WDF_MEMORY_DESCRIPTOR_INIT_HANDLE (wdfmemory.h)

[Berlaku untuk KMDF dan UMDF]

Fungsi WDF_MEMORY_DESCRIPTOR_INIT_HANDLE menginisialisasi struktur WDF_MEMORY_DESCRIPTOR sehingga menjelaskan objek memori kerangka kerja tertentu.

Sintaks

void WDF_MEMORY_DESCRIPTOR_INIT_HANDLE(
  [out]          PWDF_MEMORY_DESCRIPTOR Descriptor,
  [in]           WDFMEMORY              Memory,
  [in, optional] PWDFMEMORY_OFFSET      Offsets
);

Parameter

[out] Descriptor

Penunjuk ke struktur WDF_MEMORY_DESCRIPTOR .

[in] Memory

Handel ke objek memori kerangka kerja.

[in, optional] Offsets

Penunjuk ke struktur WDFMEMORY_OFFSET . Parameter ini bersifat opsional dan dapat berupa NULL.

Nilai kembali

Tidak ada

Keterangan

Fungsi WDF_MEMORY_DESCRIPTOR_INIT_HANDLE nol struktur WDF_MEMORY_DESCRIPTOR yang ditentukan dan mengatur anggota Jenis struktur ke WdfMemoryDescriptorTypeHandle. Kemudian mengatur anggota u.HandleType.Memory dan u.HandleType.Offsets struktur ke nilai yang ditentukan oleh parameter Memori dan Offsets .

Contoh

Contoh kode berikut mendapatkan handel ke objek memori kerangka kerja yang mewakili buffer input permintaan I/O. Contohnya menggunakan handel objek memori untuk menginisialisasi struktur WDF_MEMORY_DESCRIPTOR . Kemudian, contoh menginisialisasi struktur WDF_USB_CONTROL_SETUP_PACKET dan mengirim permintaan transfer kontrol USB ke target I/O.

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

Persyaratan

Persyaratan Nilai
Target Platform Universal
Versi KMDF minimum 1,0
Versi UMDF minimum 2.0
Header wdfmemory.h (termasuk Wdf.h)
Aturan kepatuhan DDI MemAfterReqCompletedIntIoctlA(kmdf), MemAfterReqCompletedIoctlA(kmdf), MemAfterReqCompletedReadA(kmdf), MemAfterReqCompletedWriteA(kmdf)

Lihat juga

WDFMEMORY_OFFSET

WDF_MEMORY_DESCRIPTOR

WDF_MEMORY_DESCRIPTOR_INIT_BUFFER

WDF_MEMORY_DESCRIPTOR_INIT_MDL