fonction WDF_MEMORY_DESCRIPTOR_INIT_HANDLE (wdfmemory.h)
[S’applique à KMDF et UMDF]
La fonction WDF_MEMORY_DESCRIPTOR_INIT_HANDLE initialise une structure de WDF_MEMORY_DESCRIPTOR afin qu’elle décrive un objet de mémoire de framework spécifié.
Syntaxe
void WDF_MEMORY_DESCRIPTOR_INIT_HANDLE(
[out] PWDF_MEMORY_DESCRIPTOR Descriptor,
[in] WDFMEMORY Memory,
[in, optional] PWDFMEMORY_OFFSET Offsets
);
Paramètres
[out] Descriptor
Pointeur vers une structure WDF_MEMORY_DESCRIPTOR .
[in] Memory
Handle d’un objet de mémoire framework.
[in, optional] Offsets
Pointeur vers une structure WDFMEMORY_OFFSET . Ce paramètre est facultatif et peut être NULL.
Valeur de retour
None
Remarques
La fonction WDF_MEMORY_DESCRIPTOR_INIT_HANDLE zéro la structure WDF_MEMORY_DESCRIPTOR spécifiée et définit le membre Type de la structure sur WdfMemoryDescriptorTypeHandle. Ensuite, il définit les membres u.HandleType.Memory et u.HandleType.Offsets de la structure sur les valeurs que les paramètres Memory et Offsets spécifient, respectivement.
Exemples
L’exemple de code suivant obtient un handle pour un objet de mémoire framework qui représente la mémoire tampon d’entrée d’une demande d’E/S. L’exemple utilise le handle d’objet mémoire pour initialiser une structure WDF_MEMORY_DESCRIPTOR . Ensuite, l’exemple initialise une structure WDF_USB_CONTROL_SETUP_PACKET et envoie une demande de transfert de contrôle USB à une cible d’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
);
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
Version KMDF minimale | 1.0 |
Version UMDF minimale | 2.0 |
En-tête | wdfmemory.h (include Wdf.h) |
Règles de conformité DDI | MemAfterReqCompletedIntIoctlA(kmdf), MemAfterReqCompletedIoctlA(kmdf), MemAfterReqCompletedReadA(kmdf), MemAfterReqCompletedWriteA(kmdf) |