GetNames-Funktion
Ruft eine Teilmenge oder alle Namen der Eigenschaften eines Objekts ab.
Hinweis
Diese API ist ausschließlich für die interne Verwendung vorgesehen. Sie ist nicht für die Verwendung im Entwicklercode vorgesehen.
Syntax
HRESULT GetNames (
[in] int vFunc,
[in] IWbemClassObject* ptr,
[in] LPCWSTR wszQualifierName,
[in] LONG lFlags,
[in] VARIANT* pQualifierValue,
[out] SAFEARRAY (BSTR)** pstrNames
);
Parameter
vFunc
[in] Dieser Parameter wird nicht verwendet.
ptr
[in] Ein Zeiger auf eine IWbemClassObject-Instanz.
wszQualifierName
[in] Ein Zeiger auf ein gültiges LPCWSTR
-Element, das einen Qualifizierernamen angibt, der als Teil eines Filters fungiert. Weitere Informationen finden Sie im Abschnitt Hinweise. Dieser Parameter kann null
sein.
lFlags
[in] Eine Kombination aus Bitfeldern. Weitere Informationen finden Sie im Abschnitt Hinweise.
pQualifierValue
[in] Ein Zeiger auf eine gültige VARIANT
-Struktur, die mit einem Filterwert initialisiert wird. Dieser Parameter kann null
sein.
pstrNames
[out] Eine SAFEARRAY
-Struktur, die Eigenschaftsnamen enthält. Beim Einstieg muss dieser Parameter immer ein Zeiger auf null
sein. Weitere Informationen finden Sie im Abschnitt Bemerkungen.
Rückgabewert
Die folgenden von dieser Funktion zurückgegebenen Werte werden in der Headerdatei WbemCli.h definiert oder können als Konstanten im Code definiert werden:
Konstante | Wert | Beschreibung |
---|---|---|
WBEM_E_FAILED |
0x80041001 | Es ist ein allgemeiner Fehler aufgetreten. |
WBEM_E_INVALID_PARAMETER |
0x80041008 | Mindestens ein Parameter ist ungültig, oder es wurde eine falsche Kombination aus Flags und Parametern angegeben. |
WBEM_E_OUT_OF_MEMORY |
0x80041006 | Es ist nicht genügend Arbeitsspeicher verfügbar, um den Vorgang abzuschließen. |
WBEM_S_NO_ERROR |
0 | Der Funktionsaufruf war erfolgreich. |
Bemerkungen
Diese Funktion umschließt einen Aufruf der IWbemClassObject::GetNames-Methode.
Die zurückgegebenen Namen werden mit einer Kombination aus Flags und Parametern gesteuert. Die Funktion kann beispielsweise die Namen aller Eigenschaften oder nur die Namen der Schlüsseleigenschaften zurückgeben. Der primäre Filter wird im lFlags
-Parameter angegeben, und die anderen Parameter variieren je nach diesem Parameter.
Die Flagwerte in lFlags
sind Bitfelder.
Die Flags, die als lEnumFlags
-Argument übergeben werden können, sind Bitfelder, die in der Headerdatei WbemCli.h definiert sind. Alternativ können sie als Konstanten in Ihrem Code definiert werden. Sie können ein Flag aus jeder Gruppe mit einem beliebigen Flag aus jeder anderen Gruppe kombinieren. Flags aus der gleichen Gruppe schließen sich jedoch gegenseitig aus.
Flags der Gruppe 1 | Wert | Beschreibung |
---|---|---|
WBEM_FLAG_ALWAYS |
0 | Gibt alle Eigenschaftennamen zurück. strQualifierName und pQualifierVal werden nicht verwendet. |
WBEM_FLAG_ONLY_IF_TRUE |
1 | Gibt nur Eigenschaften zurück, die über einen Qualifizierer mit dem Namen verfügen, der durch den strQualifierName -Parameter angegeben ist. Wenn dieses Flag verwendet wird, muss strQualifierName angegeben werden. |
WBEM_FLAG_ONLY_IF_FALSE |
2 | Gibt nur Eigenschaften zurück, die über keinen Qualifizierer mit dem Namen verfügen, der durch den strQualifierName -Parameter angegeben ist. Wenn dieses Flag verwendet wird, muss strQualifierName angegeben werden. |
WBEM_FLAG_ONLY_IF_IDENTICAL |
3 | Gibt nur Eigenschaften zurück, die über einen Qualifizierer mit dem Namen verfügen, der durch den wszQualifierName -Parameter angegeben ist, und außerdem einen Wert haben, der dem durch die pQualifierVal -Struktur angegebenen Wert entspricht. Wenn dieses Flag verwendet wird, müssen sowohl ein Qualifizierername (wszQualifierName ) als auch ein Qualifiziererwert (pQualifierValue ) angegeben werden. |
Flags der Gruppe 2 | Wert | Beschreibung |
---|---|---|
WBEM_FLAG_KEYS_ONLY |
0x4 | Gibt nur die Namen der Eigenschaften zurück, die die Schlüssel definieren. |
WBEM_FLAG_REFS_ONLY |
0x8 | Gibt nur Eigenschaftsnamen zurück, bei denen es sich um Objektverweise handelt. |
Flags der Gruppe 3 | Wert | Beschreibung |
---|---|---|
WBEM_FLAG_LOCAL_ONLY |
0x10 | Gibt nur Eigenschaftsnamen zurück, die zur am häufigsten abgeleiteten Klasse gehören. Eigenschaften aus den übergeordneten Klassen werden ausgeschlossen. |
WBEM_FLAG_PROPAGATED_ONLY |
0x20 | Gibt nur Eigenschaftsnamen zurück, die zu den übergeordneten Klassen gehören. |
WBEM_FLAG_SYSTEM_ONLY |
0x30 | Gibt nur die Namen von Systemeigenschaften zurück. |
WBEM_FLAG_NONSYSTEM_ONLY |
0x40 | Gibt nur die Namen systemfremder Eigenschaften zurück. |
Die Funktion ordnet immer ein neues sicheres Array (SAFEARRAY
) zu, wenn sie WBEM_S_NO_ERROR
zurückgibt, und pstrNames
ist immer so festgelegt, dass darauf gezeigt wird. Das zurückgegebene Array kann null Elemente enthalten, wenn keine Eigenschaften den angegebenen Filtern entsprechen. Wenn die Funktion einen anderen Wert als WBM_S_NO_ERROR
zurückgibt, wird keine neue SAFEARRAY
-Struktur zurückgegeben.
Anforderungen
Plattformen: Informationen finden Sie unter Systemanforderungen.
Header: WMINet_Utils.idl
.NET Framework-Versionen: Seit Version 4.7.2 verfügbar