función WDF_MEMORY_DESCRIPTOR_INIT_HANDLE (wdfmemory.h)
[Se aplica a KMDF y UMDF]
La función WDF_MEMORY_DESCRIPTOR_INIT_HANDLE inicializa una estructura WDF_MEMORY_DESCRIPTOR para que describa un objeto de memoria del marco especificado.
Sintaxis
void WDF_MEMORY_DESCRIPTOR_INIT_HANDLE(
[out] PWDF_MEMORY_DESCRIPTOR Descriptor,
[in] WDFMEMORY Memory,
[in, optional] PWDFMEMORY_OFFSET Offsets
);
Parámetros
[out] Descriptor
Puntero a una estructura de WDF_MEMORY_DESCRIPTOR.
[in] Memory
Identificador de un objeto de memoria de marco.
[in, optional] Offsets
Puntero a una estructura de WDFMEMORY_OFFSET. Este parámetro es opcional y se puede NULL.
Valor devuelto
Ninguno
Observaciones
La función WDF_MEMORY_DESCRIPTOR_INIT_HANDLE cero la estructura de WDF_MEMORY_DESCRIPTOR especificada y establece el miembro type de de la estructura en WdfMemoryDescriptorTypeHandle. A continuación, establece los u.HandleType.Memory de la estructura y miembros u.HandleType.Offsets en los valores que especifican los de memoria y parámetros offsets, respectivamente.
Ejemplos
En el ejemplo de código siguiente se obtiene un identificador de un objeto de memoria de marco que representa el búfer de entrada de una solicitud de E/S. En el ejemplo se usa el identificador de objeto de memoria para inicializar una estructura de WDF_MEMORY_DESCRIPTOR. A continuación, el ejemplo inicializa una estructura de WDF_USB_CONTROL_SETUP_PACKET y envía una solicitud de transferencia de control USB a un destino de E/S.
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
);
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Universal |
versión mínima de KMDF | 1.0 |
versión mínima de UMDF | 2.0 |
encabezado | wdfmemory.h (incluya Wdf.h) |
reglas de cumplimiento de DDI | MemAfterReqCompletedIntIoctlA(kmdf), MemAfterReqCompletedIoctlA(kmdf), MemAfterReqCompletedReadA(kmdf), MemAfterReqCompletedWriteA(kmdf) |