Partager via


GetNames, fonction

Récupère une partie ou l’ensemble des noms des propriétés d’un objet.

Notes

Cette API est destinée à un usage interne uniquement. Elle n’est pas destinée à être utilisée dans le code du développeur.

Syntaxe

HRESULT GetNames (
   [in] int                 vFunc,
   [in] IWbemClassObject*   ptr,
   [in] LPCWSTR             wszQualifierName,
   [in] LONG                lFlags,
   [in] VARIANT*            pQualifierValue,
   [out] SAFEARRAY (BSTR)** pstrNames
);

Paramètres

vFunc
[in] Ce paramètre est inutilisé.

ptr
[in] Pointeur vers une instance IWbemClassObject.

wszQualifierName
[in] Pointeur vers un LPCWSTR valide qui spécifie un nom de qualificateur agissant dans le cadre d’un filtre. Pour plus d’informations, consultez la section Remarques. Ce paramètre peut être null.

lFlags
[in] Combinaison de champs de bits. Pour plus d’informations, consultez la section Remarques.

pQualifierValue [in] Pointeur vers une structure VARIANT valide initialisée vers une valeur de filtre. Ce paramètre peut être null.

pstrNames
[out] Structure SAFEARRAY qui contient des noms de propriétés. Lors de l’entrée, ce paramètre doit toujours être un pointeur vers null. Pour plus d'informations, consultez la section Remarques.

Valeur retournée

Les valeurs suivantes renvoyées par cette fonction sont définies dans le fichier d’en-tête WbemCli.h, ou vous pouvez les définir comme constantes dans votre code :

Constant Valeur Description
WBEM_E_FAILED 0x80041001 Il y a eu une défaillance générale.
WBEM_E_INVALID_PARAMETER 0x80041008 Un ou plusieurs paramètres ne sont pas valides, ou une combinaison incorrecte d’indicateurs et de paramètres a été spécifiée.
WBEM_E_OUT_OF_MEMORY 0x80041006 La mémoire n'est pas suffisante pour terminer cette opération.
WBEM_S_NO_ERROR 0 L’appel de fonction a abouti.

Notes

Cette fonction wrappe un appel à la méthode IWbemClassObject::GetNames.

Le nom retourné est contrôlé par une combinaison d’indicateurs et de paramètres. Par exemple, la fonction peut retourner les noms de toutes les propriétés ou uniquement les noms des propriétés de clé. Le filtre principal est spécifié dans le paramètre lFlags, et les autres paramètres varient en fonction de celui-ci.

Les valeurs d’indicateur dans lFlags sont des champs de bits

Les indicateurs qui peuvent être passés en tant qu’argument lEnumFlags sont des champs de bits qui sont définis dans l’argument WbemCli.h. Vous pouvez également les définir en tant que constantes dans votre code. Vous pouvez combiner un indicateur de chaque groupe avec n’importe quel indicateur d’un autre groupe. Toutefois, les indicateurs d’un même groupe s’excluent mutuellement.

Indicateurs du groupe 1 Valeur Description
WBEM_FLAG_ALWAYS 0 Retourne tous les noms de propriétés. strQualifierName et pQualifierVal ne sont pas utilisés.
WBEM_FLAG_ONLY_IF_TRUE 1 Retourne uniquement les propriétés dont un qualificateur porte le nom spécifié par le paramètre strQualifierName. Si cet indicateur est utilisé, vous devez spécifier strQualifierName.
WBEM_FLAG_ONLY_IF_FALSE 2 Retourne uniquement les propriétés dont aucun qualificateur ne porte le nom spécifié par le paramètre strQualifierName. Si cet indicateur est utilisé, vous devez spécifier strQualifierName.
WBEM_FLAG_ONLY_IF_IDENTICAL 3 Retourne uniquement les propriétés dont un qualificateur porte le nom spécifié par le paramètre wszQualifierName et qui ont également une valeur identique à celle spécifiée par la structure pQualifierVal. Si cet indicateur est utilisé, vous devez spécifier à la fois un wszQualifierName et un pQualifierValue.
Indicateurs du groupe 2 Valeur Description
WBEM_FLAG_KEYS_ONLY 0x4 Retourne uniquement les noms des propriétés qui définissent les clés.
WBEM_FLAG_REFS_ONLY 0x8 Retourne uniquement les noms de propriétés qui sont des références d’objet.
Indicateurs du groupe 3 Valeur Description
WBEM_FLAG_LOCAL_ONLY 0x10 Retourne uniquement les noms de propriétés qui appartiennent à la classe la plus dérivée. Exclut les propriétés des classes parentes.
WBEM_FLAG_PROPAGATED_ONLY 0x20 Retourne uniquement les noms de propriétés qui appartiennent aux classes parentes.
WBEM_FLAG_SYSTEM_ONLY 0x30 Retourne uniquement les noms des propriétés système.
WBEM_FLAG_NONSYSTEM_ONLY 0x40 Retourne uniquement les noms des propriétés non système.

La fonction alloue toujours un nouveau SAFEARRAY si elle retourne WBEM_S_NO_ERROR, et pstrNames est toujours défini pour pointer vers celui-ci. Le tableau retourné peut avoir 0 élément si aucune propriété ne correspond aux filtres spécifiés. Si la fonction retourne une valeur autre que WBM_S_NO_ERROR, aucune nouvelle structure SAFEARRAY n’est retournée.

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : WMINet_Utils.idl

Versions de .NET Framework : disponibles depuis la version 4.7.2

Voir aussi