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 de WDF_MEMORY_DESCRIPTOR para que describa un objeto de memoria de 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 puede ser NULL.
Valor devuelto
None
Observaciones
La función WDF_MEMORY_DESCRIPTOR_INIT_HANDLE cero la estructura de WDF_MEMORY_DESCRIPTOR especificada y establece el miembro Type de la estructura en WdfMemoryDescriptorTypeHandle. A continuación, establece los miembros u.HandleType.Memory y u.HandleType.Offsets de la estructura en los valores que especifican los parámetrosMemory y 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 | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.0 |
Versión mínima de UMDF | 2.0 |
Encabezado | wdfmemory.h (incluir Wdf.h) |
Reglas de cumplimiento de DDI | MemAfterReqCompletedIntIoctlA(kmdf), MemAfterReqCompletedIoctlA(kmdf), MemAfterReqCompletedReadA(kmdf), MemAfterReqCompletedWriteA(kmdf) |