DevCreateObjectQueryFromIdEx, fonction (devquery.h)
Crée une requête d’appareil pour récupérer des propriétés basées sur les paramètres de requête, les paramètres étendus et l’ID d’objet spécifiés.
Syntaxe
HRESULT DevCreateObjectQueryFromIdEx(
[in] DEV_OBJECT_TYPE ObjectType,
[in] PCWSTR pszObjectId,
[in] ULONG QueryFlags,
[in] ULONG cRequestedProperties,
[in, optional] const DEVPROPCOMPKEY *pRequestedProperties,
[in] ULONG cFilterExpressionCount,
[in, optional] const DEVPROP_FILTER_EXPRESSION *pFilter,
[in] ULONG cExtendedParameterCount,
[in, optional] const DEV_QUERY_PARAMETER *pExtendedParameters,
[in] PDEV_QUERY_RESULT_CALLBACK pCallback,
[in, optional] PVOID pContext,
[out] PHDEVQUERY phDevQuery
);
Paramètres
[in] ObjectType
Valeur de l’énumération DEV_OBJECT_TYPE qui détermine le type d’objet sur lequel cette requête doit fonctionner.
[in] pszObjectId
Identificateur de chaîne pour l’objet spécifique sur lequel la requête doit fonctionner.
[in] QueryFlags
Combinaison de valeurs DEV_QUERY_FLAGS combinées à l’aide d’une opération OR au niveau du bit.
[in] cRequestedProperties
Nombre de structures DEVPROPCOMPKEY fournies dans pRequestedProperties. Si DevQueryFlagAllProperties est spécifié, cette valeur doit être définie sur 0.
[in, optional] pRequestedProperties
Fournit éventuellement un tableau de structures DEVPROPCOMPKEY qui spécifient les propriétés qui doivent être récupérées pour les objets dans le jeu de résultats de la requête lorsque pCallback est appelé pour notifier la requête d’un ajout d’un objet à son jeu de résultats.
Si DevQueryFlagUpdateResults a été spécifié dans QueryFlags, la requête est avertie si la valeur de l’une de ces propriétés change pour un objet dans le jeu de résultats de la requête.
Le champ
Si cRequestedProperties est 0, cette valeur doit être NULL.
[in] cFilterExpressionCount
Nombre de structures DEVPROP_FILTER_EXPRESSION fournies dans pFilter .
[in, optional] pFilter
Fournit éventuellement un tableau de structures DEVPROP_FILTER_EXPRESSION qui spécifient des critères de filtre pour les objets qui doivent faire partie du jeu de résultats de la requête. Si cFilterExpressionCount est 0, cette valeur doit être NULL.
[in] cExtendedParameterCount
Réservé à l’utilisation du système. Doit être défini sur 0.
[in, optional] pExtendedParameters
Réservé à l’utilisation du système. Doit être défini sur NULL.
[in] pCallback
Une fonction de rappel PDEV_QUERY_RESULT_CALLBACK à laquelle les résultats de cette requête doivent être envoyés.
[in, optional] pContext
Contexte fourni par l’appelant. Cette valeur est passée à la fonction de rappel non modifiée.
[out] phDevQuery
Pointeur qui reçoit le handle représentant la requête. Si DevQueryFlagsUpdateResults est spécifié, la requête reçoit les mises à jour jusqu’à ce que le handle soit fermé. Appelez DevCloseObjectQuery pour fermer ce handle pour arrêter la requête.
Valeur de retour
S_OK est retourné si une requête a été créée avec succès ; sinon, valeur d’erreur appropriée.
Remarques
Lorsqu’un client souhaite récupérer des données sur un objet spécifique en fonction de son identité, utilisez cette fonction plutôt que DevCreateObjectQuery avec un filtre. Cette fonction est plus efficace.
Pour plus d’informations, consultez la section remarques de DevCreateObjectQuery, qui s’applique également à cette fonction. Pour obtenir un exemple de création d’une requête d’appareil pour récupérer des propriétés basées sur les paramètres de requête et l’ID d’objet spécifiés, consultez DevCreateObjectQueryFromId.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 10 version 1809 |
serveur minimum pris en charge | Windows Server 2019 |
d’en-tête | devquery.h |
bibliothèque | Onecore.lib |
DLL | Cfgmgr32.dll |