Condividi tramite


Funzione GetNames

Recupera un subset o tutti i nomi delle proprietà di un oggetto.

Nota

Questa API è solo per uso interno. Non è destinata all'uso dal codice dello sviluppatore.

Sintassi

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

Parametri

vFunc
[in] Questo parametro è inutilizzato.

ptr
[in] Puntatore a un'istanza di IWbemClassObject .

wszQualifierName
[in] Puntatore a un valore valido LPCWSTR che specifica un nome qualificatore che opera come parte di un filtro. Per altre informazioni, vedere la sezione Osservazioni . Questo parametro può essere null.

lFlags
[in] Combinazione di campi bit. Per altre informazioni, vedere la sezione Osservazioni .

pQualifierValue [in] Puntatore a una struttura valida VARIANT inizializzata in un valore di filtro. Questo parametro può essere null.

pstrNames
[out] Struttura SAFEARRAY che contiene nomi di proprietà. Nella voce, questo parametro deve sempre essere un puntatore a null. Per altre informazioni, vedere la sezione Osservazioni .

Valore restituito

I valori seguenti restituiti da questa funzione sono definiti nel file di intestazione WbemCli.h oppure è possibile definirli come costanti nel codice:

Costante Valore Descrizione
WBEM_E_FAILED 0x80041001 Si è verificato un errore generale.
WBEM_E_INVALID_PARAMETER 0x80041008 Uno o più parametri non sono validi oppure è stata specificata una combinazione errata di flag e parametri.
WBEM_E_OUT_OF_MEMORY 0x80041006 Memoria insufficiente per completare l’operazione.
WBEM_S_NO_ERROR 0 La chiamata alla funzione ha avuto esito positivo.

Commenti

Questa funzione esegue il wrapping di una chiamata al metodo IWbemClassObject::GetNames .

Il denominato restituito è controllato da una combinazione di flag e parametri. Ad esempio, la funzione può restituire i nomi di tutte le proprietà o solo i nomi delle proprietà chiave. Il filtro primario viene specificato nel lFlags parametro e gli altri parametri variano a seconda del parametro.

I valori del flag in lFlags sono campi bit

I flag che possono essere passati come lEnumFlags argomento sono campi bit definiti nel file di intestazione WbemCli.h oppure è possibile definirli come costanti nel codice. È possibile combinare un flag da ogni gruppo con qualsiasi flag di qualsiasi altro gruppo. Tuttavia, i flag dello stesso gruppo si escludono a vicenda.

Flag gruppo 1 Valore Descrizione
WBEM_FLAG_ALWAYS 0 Restituisce tutti i nomi delle proprietà. strQualifierName e pQualifierVal sono inutilizzati.
WBEM_FLAG_ONLY_IF_TRUE 1 Restituisce solo le proprietà che hanno un qualificatore del nome specificato dal strQualifierName parametro. Se viene usato questo flag, è necessario specificare strQualifierName.
WBEM_FLAG_ONLY_IF_FALSE 2 Restituisce solo le proprietà che non hanno un qualificatore del nome specificato dal strQualifierName parametro. Se viene usato questo flag, è necessario specificare strQualifierName.
WBEM_FLAG_ONLY_IF_IDENTICAL 3 Restituisce solo le proprietà che hanno un qualificatore del nome specificato dal wszQualifierName parametro e hanno anche un valore identico a quello specificato dalla pQualifierVal struttura. Se viene usato questo flag, è necessario specificare sia un oggetto wszQualifierName che un pQualifierValueoggetto .
Flag gruppo 2 Valore Descrizione
WBEM_FLAG_KEYS_ONLY 0x4 Restituisce solo i nomi delle proprietà che definiscono le chiavi.
WBEM_FLAG_REFS_ONLY 0x8 Restituisce solo nomi di proprietà che sono riferimenti a oggetti.
Flag di gruppo 3 Valore Descrizione
WBEM_FLAG_LOCAL_ONLY 0x10 Restituisce solo nomi di proprietà appartenenti alla classe più derivata. Escludere le proprietà dalle classi padre.
WBEM_FLAG_PROPAGATED_ONLY 0x20 Restituisce solo nomi di proprietà appartenenti alle classi padre.
WBEM_FLAG_SYSTEM_ONLY 0x30 Restituisce solo i nomi delle proprietà di sistema.
WBEM_FLAG_NONSYSTEM_ONLY 0x40 Restituisce solo i nomi delle proprietà non di sistema.

La funzione alloca sempre un nuovo SAFEARRAY se restituisce WBEM_S_NO_ERRORe pstrNames viene sempre impostata su di esso. La matrice restituita può avere 0 elementi se nessuna proprietà corrisponde ai filtri specificati. Se la funzione restituisce un valore diverso da WBM_S_NO_ERROR, non viene restituita una nuova SAFEARRAY struttura.

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: WMINet_Utils.idl

Versioni di .NET Framework: Disponibile da 4.7.2

Vedi anche