Freigeben über


spezielle Abfragen Configuration Manager

Die erweiterte WMI-Abfragesprache (WQL) unterstützt Abfragen, die spezifisch für Configuration Manager Anforderungen sind. In der folgenden Tabelle werden die zusätzlichen Abfragen beschrieben, die unterstützt werden.

Array-Eigenschaft
Bestimmte Werte in einer Arrayeigenschaft.

Basisklasse
Eigenschaftswerte, die in einer Basisklasse vorhanden sind.

Prototyp
Eine Klassendefinition anstelle von Klassendaten.

Sammlungsbeschränkung
Daten, die für eine bestimmte Sammlung spezifisch sind.

Arrayeigenschaftenabfragen

Aufgrund der Natur von Arrayeigenschaften kann das Einschließen in eine erweiterte WQL-Abfrage etwas komplex sein. Betrachten Sie beispielsweise die SMS_R_System -Klasse, die die IPAddresses -Eigenschaft enthält. Die IPAddresses -Eigenschaft ist ein Array, das eine oder mehrere einzelne Adressen enthält. Um Computer mit IP-Adressen abzufragen, können Sie eine der beiden folgenden Abfragen angeben.

SELECT * FROM SMS_R_System WHERE IPAddresses = "2.2.2.2"

SELECT * FROM SMS_R_System WHERE IPAddresses IN ("1.1.1.1", "2.2.2.2")

Basisklassenabfragen

Erweiterte WQL-Abfragen für eine Basisklasse geben Instanzen aus allen Unterklassen zurück. Bei abstrakten Basisklassenabfragen sind die zurückgegebenen Instanzen immer Instanzen der abgeleiteten Klassen. Die folgende Abfrage gibt z. B. Instanzen von Klassen wie SMS_SCI_Component und SMS_SCI_Addresszurück, die Eigenschaften von SMS_SiteControlItemerben.

SELECT * FROM SMS_SiteControlItem WHERE Sitecode="ABC"

Prototypabfragen

Mit erweitertem WQL können Sie anfordern, dass das Resultset anstelle der tatsächlichen Instanzen der Klasse eine Definition der zurückzugebenden Klasse enthält. Es gibt zwei mögliche Ergebnisse dieser Art von Abfrage. In den meisten Fällen gibt eine Prototypabfrage ein Klassenobjekt zurück, das die Definition enthält. Wenn es sich bei der Abfrage um einen JOIN-Vorgang mit mehreren Klassen in der SELECT-Anweisung handelt, gibt die Prototypabfrage eine Instanz der __Generic Klasse zurück.

Obwohl Prototypabfragen bei der Verarbeitung der Ergebnisse von JOIN-Vorgängen am nützlichsten sind, werden sie für alle Abfragen unterstützt. Um eine Klassendefinition als Resultset anzufordern, legen Sie den lFlags Parameter in IWbemServices::ExecQuery oder IWbemServices::ExecQueryAsync auf WBEM_FLAG_PROTOTYPE fest.

Sammlungsbegrenzungsabfragen

Eine Configuration Manager-Sammlung ist eine Gruppierung von Ressourcen wie Computern und Benutzern. Der erweiterte WQL unterstützt Abfragen für bestimmte Sammlungen. Es gibt zwei Ansätze, die Sie verwenden können, um eine Abfrage auf eine bestimmte Sammlung zu beschränken:

Legen Sie den Kontextwert LimitToCollectionIDs auf den erforderlichen CollectionID-Wert fest. Dieser Kontextwert wird über den IWbemContext-Zeiger in der IWbemServices::ExecQuery -Methode auf den Namen der Auflistung verfügbar gemacht.

Geben Sie einen inneren JOIN-Vorgang an, indem Sie die SMS_CollectionMemberabgeleiteten Klassen in der Abfrage verwenden, die an ExecQuery übergeben wird.

Der zweite Ansatz ist langsamer, aber er ist der einzige mögliche Ansatz, wenn Sie eine Anwendung verwenden, die den WMI-ODBC-Adapter verwendet.

Siehe auch

Configuration Manager Association-Klassen
Configuration Manager Bitfeldeigenschaften
Configuration Manager Datums- und Uhrzeitformate
Configuration Manager Eingebettete Objekte
Configuration Manager Erweiterte WMI-Abfragesprache
Übersicht über ObjekteConfiguration Manager Verzögerte Eigenschaften
Informationen zu FehlernConfiguration Manager Objektsicherheit