Fonction PcGetDeviceProperty (portcls.h)
La fonction PcGetDeviceProperty retourne la propriété d’appareil demandée à partir du Registre.
Syntaxe
PORTCLASSAPI NTSTATUS PcGetDeviceProperty(
[in] PVOID DeviceObject,
[in] DEVICE_REGISTRY_PROPERTY DeviceProperty,
[in] ULONG BufferLength,
[out] PVOID PropertyBuffer,
[out] PULONG ResultLength
);
Paramètres
[in] DeviceObject
Pointeur vers l’objet appareil pour l’appareil. Ce paramètre pointe vers une structure système DEVICE_OBJECT, mais est converti en type PVOID.
[in] DeviceProperty
Énumérateur DEVICE_REGISTRY_PROPERTY-typé qui identifie la propriété de l’appareil à récupérer.
[in] BufferLength
Spécifie la longueur en octets de la mémoire tampon qui doit recevoir les données de propriété demandées.
[out] PropertyBuffer
Pointeur vers une mémoire tampon allouée par l’appelant dans laquelle la méthode consiste à écrire les données de propriété demandées. La mémoire tampon doit être suffisamment grande pour contenir le nombre d’octets spécifiés dans BufferLength.
[out] ResultLength
Pointeur vers une variable allouée par l’appelant dans laquelle la méthode génère un nombre spécifiant le nombre d’octets réellement écrits dans la mémoire tampon. Si la taille de la mémoire tampon spécifiée dans BufferLength est trop petite pour contenir les données de propriété, la méthode génère à la place le nombre d’octets requis pour les données de propriété et retourne STATUS_BUFFER_TOO_SMALL.
Valeur de retour
PcGetDeviceProperty retourne STATUS_SUCCESS si l’appel a réussi. Sinon, elle retourne un code d’erreur approprié. La routine retourne STATUS_BUFFER_TOO_SMALL si la taille de la mémoire tampon spécifiée dans BufferLength n’était pas suffisamment grande pour contenir les données de propriété demandées.
Remarques
Deux appels à PcGetDeviceProperty peuvent être nécessaires pour déterminer le BufferLength requis. Dans le premier appel, BufferLength peut être égal à zéro ou une estimation de la taille de mémoire tampon requise. Si l’état de retour est STATUS_BUFFER_TOO_SMALL, cela signifie que l’appelant doit allouer une mémoire tampon de la taille qui a été générée via ResultLength et appeler à nouveau PcGetDeviceProperty.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Le pilote système PortCls implémente la fonction PcGetDeviceProperty dans Microsoft Windows 98/Me et dans les systèmes d’exploitation Windows 2000 et ultérieurs. |
plateforme cible | Universel |
d’en-tête | portcls.h (include Portcls.h) |
bibliothèque | Portcls.lib |
IRQL | PASSIVE_LEVEL |