WdfDeviceAllocAndQueryPropertyEx, fonction (wdfdevice.h)
[S’applique à KMDF et UMDF]
La méthode WdfDeviceAllocAndQueryPropertyEx alloue une mémoire tampon et récupère une propriété d’appareil spécifiée.
Syntaxe
NTSTATUS WdfDeviceAllocAndQueryPropertyEx(
[in] WDFDEVICE Device,
[in] PWDF_DEVICE_PROPERTY_DATA DeviceProperty,
[in] POOL_TYPE PoolType,
[in, optional] PWDF_OBJECT_ATTRIBUTES PropertyMemoryAttributes,
[out] WDFMEMORY *PropertyMemory,
[out] PDEVPROPTYPE Type
);
Paramètres
[in] Device
Handle d’un objet d’appareil framework.
[in] DeviceProperty
Pointeur vers une structure de WDF_DEVICE_PROPERTY_DATA qui identifie la propriété d’appareil à récupérer.
[in] PoolType
Énumérateur POOL_TYPE qui spécifie le type de mémoire à allouer.
[in, optional] PropertyMemoryAttributes
Pointeur vers une structure de WDF_OBJECT_ATTRIBUTES allouée par l’appelant qui décrit les attributs d’objet pour l’objet mémoire que la fonction allouera. Ce paramètre est facultatif et peut être WDF_NO_OBJECT_ATTRIBUTES.
[out] PropertyMemory
Pointeur vers un emplacement de type WDFMEMORY qui reçoit un handle vers un objet de mémoire framework.
[out] Type
Pointeur vers une variable DEVPROPTYPE . Si la méthode réussit, lors du retour, ce paramètre contient la valeur de type de propriété des données de propriété stockées dans PropertyMemory.
Valeur retournée
Si l’opération réussit, WdfDeviceAllocAndQueryPropertyEx retourne STATUS_SUCCESS. Les valeurs de retour supplémentaires sont les suivantes :
Code de retour | Description |
---|---|
|
La valeur DeviceProperty spécifiée n’est pas valide. |
La méthode peut retourner d’autres valeurs NTSTATUS.
Un bogue case activée se produit si le pilote fournit un handle d’objet non valide.
Remarques
Vous pouvez utiliser WdfDeviceAllocAndQueryPropertyEx pour récupérer toute propriété exposée via le modèle de propriété unifié, alors que la méthode WdfDeviceAllocAndQueryProperty permet uniquement d’interroger un sous-ensemble du modèle de propriété unifié.
La méthode WdfDeviceAllocAndQueryPropertyEx détermine la quantité de mémoire nécessaire pour contenir la propriété d’interface d’appareil demandée. Il alloue suffisamment de mémoire pour contenir les données et retourne un handle à un objet de mémoire framework qui décrit la mémoire allouée. Pour accéder aux données, votre pilote peut appeler WdfMemoryGetBuffer.
Pour plus d’informations sur les méthodes associées, consultez Accès au modèle de propriété d’appareil unifié.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
Version KMDF minimale | 1.13 |
Version UMDF minimale | 2.0 |
En-tête | wdfdevice.h (include Wdf.h) |
Bibliothèque | Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF) |
IRQL | APC_LEVEL |