Standard-WMI-Qualifizierer

Im Folgenden sind die WMI-spezifischen Standardqualifizierer aufgeführt.

Zusatzvereinbarung

Datentyp: boolesch

Gilt für: Klassen

Gibt an, dass eine Klasse geänderte Qualifizierer enthält, die lokalisiert sind. Der Standardwert ist TRUE.

Die zugeordnete Klasse kann übersetzt werden. Um auf die übersetzte Version zuzugreifen, verwenden Sie den Gebietsschemabezeichner, um einen Namespacenamen zu erstellen.

Bypass_GetObject

Datentyp: boolesch

Gilt für: Methoden

Gibt an, dass der Methodenaufruf direkt an den ExecMethodAsync-Aufruf des Anbieters übergeben werden soll, anstatt dass der Anbieter zuerst getObject aufruft, um den Objektpfad zu überprüfen. Der Standardwert lautet FALSE. Die Verwendung von Bypass_GetObject kann die Leistung erheblich verbessern.

Stellen Sie vor der Verwendung von Bypass_GetObject sicher, dass keine der folgenden Aktionen ausgeführt wird:

  • Leiten Sie eine Klasse von Ihrer Klasse ab.
  • Überschreiben Sie die Methode, die über den Bypass_GetObject-Qualifizierer verfügt.

Die Nichtbeachtung dieser Vorsichtsmaßnahmen kann dazu führen, dass die Methodenimplementierung der übergeordneten Klasse anstelle der untergeordneten Klasse aufgerufen wird. Weitere Informationen finden Sie unter „Verwenden des Bypass_GetObject-Qualifizierers“.

CIM_Key

Datentyp: CIM_BOOLEAN

Gilt für: Eigenschaften

Gibt an, dass die zugeordnete Eigenschaft eine Schlüsseleigenschaft in CIM, aber nicht in WMI ist.

CIMType

Datentyp: VT_BSTR

Gilt für: Eigenschaften, Methoden, Parameter

Enthält Text, der den Typ einer Eigenschaft beschreibt.

ClassContext

Datentyp: VT_BSTR

Gilt für: Klassen

Gibt an, dass eine Klasse Instanzen hat, die mit weiteren Informationen verbunden sind, welche dynamisch von einem Anbieter bereitgestellt werden.

Veraltet

Datentyp: CIM_BOOLEAN

Gilt für: Eigenschaften, Klassen

Gibt an, dass die Eigenschaft durch eine andere Eigenschaft ersetzt wurde.

Anzeige

Gilt für: Klassen, Eigenschaften

Die UUID der zugeordneten Klasse.

Dynamisch

Datentyp: boolesch

Gilt für: Klassen, Eigenschaften

Gibt eine Klasse an, deren Instanzen dynamisch erstellt werden. Der Wert dieses Qualifizierers muss auf TRUE festgelegt werden.

DynProps

Datentyp: boolesch

Gilt für: Klassen, Instanzen

Gibt an, dass eine Instanz Werte enthält, die von dynamischen Eigenschaftenanbietern bereitgestellt werden. Der Standardwert ist TRUE.

Sie müssen diesen Qualifizierer für eine solche Instanz angeben. Nur der Wert TRUE ist zulässig.

Fest

Datentyp: CIM_BOOLEAN

Gilt für: Instanzen

Gibt an, dass sich der Wert dieser Eigenschaft während der Lebensdauer der Instanz nicht ändern kann.

ID

Datentyp: VT_I4

Gilt für: Eigenschaften, Parameter

Identifiziert und sequenziert eine Eigenschaft oder einen Methodenparameter eindeutig, wenn MOF-Anweisungen automatisch generiert werden.

Dieser Qualifizierer ist nur für Methodenparameter erforderlich. Beim Erstellen von Parametern für eine Methode sollten Klassen-Designer mit Id(0) für den ersten Parameter beginnen und jede aufeinanderfolgende ganze Zahl für jeden aufeinanderfolgenden Parameter verwenden. Wenn die ID-Qualifizierer unbeabsichtigt weggelassen werden, generiert der MOF-Compiler automatisch ID-Qualifizierer.

Implementiert

Datentyp: boolesch

Gilt für: Methoden

Gibt an, dass eine Methode über eine Implementierung verfügt, die von einem Anbieter bereitgestellt wird.

InstanceContext

Datentyp: VT_BSTR

Gilt für: Instanzen

Gibt an, dass eine Instanz Werte enthält, die von einem dynamischen Eigenschaftenanbieter bereitgestellt werden.

Der Wert wird an den Eigenschaftenanbieter als Argument an die IWbemPropertyProvider::GetProperty-Methode übergeben.

Gebietsschema

Datentyp: VT_BSTR

Gilt für: Klassen oder Instanzen

Gibt die Ursprungssprache für eine Klasse oder Instanz an. Weitere Informationen zu Gebietsschemawerten finden Sie unter Gebietsschemacodes.

NamespaceSecuritySDDL

Datentyp: Zeichenfolgenarray

Gilt für: Namespaceinstanzen

Gibt eine Sicherheitsbeschreibung für den Namespace im SDDL-Format an. Weitere Informationen finden Sie unter Festlegen der Namespacesicherheit beim Erstellen des Namespace. Die SDDL-Zeichenfolge wird von WMI verarbeitet, um die Namespacesicherheit einzurichten, aber nicht als Zeichenfolge gespeichert. Wenn keine Sicherheitsbeschreibung angegeben ist, wird die Standardsicherheit verwendet. Weitere Informationen finden Sie unter Festlegen von Namepace-Sicherheitsbeschreibungen.

Optional

Datentyp: boolesch

Gilt für: Parameter

Gibt an, dass ein Parameter nicht erforderlich ist und dass er über einen klug konzipierten Standardwert verfügt.

Berechtigungen

Datentyp: Zeichenfolgenarray

Gilt für: Eigenschaften, Methoden

Wertesatz, der verwendet wird, um den Client darüber zu informieren, welche Berechtigungen zum Erstellen von Instanzen, zum Ausfüllen von Eigenschaften oder zum Ausführen von Methoden erforderlich sind. Der Standardwert lautet FALSE.

PropertyContext

Datentyp: VT_BSTR

Gilt für: Eigenschaften

Gibt an, dass eine Instanzeigenschaft Werte enthält, die von dynamischen Eigenschaftenanbietern bereitgestellt werden.

Sie müssen diesen Qualifizierer für eine solche Eigenschaft angeben. Der Wert wird an den Eigenschaftenanbieter als Argument anIWbemPropertyProvider::GetProperty übergeben.

Anbieter

Datentyp: VT_BSTR

Gilt für: Klassen

Der Wert dieses Qualifizierers ist der Name des dynamischen Anbieters, der Klasseninstanzen bereitstellt und Instanzendaten aktualisiert. Dieser Name muss bei WMI registriert werden, indem eine Instanz der __Win32Provider-Klasse mit der Eigenschaft Name erstellt wird, die diesen Namen enthält. Wenn dieser Qualifizierer für eine Klasse angegeben wird, deren Instanzen dynamisch bereitgestellt werden, muss auch der dynamische Qualifizierer angegeben werden.

RequiresEncryption

Datentyp: boolesch

Gilt für: Namespaceinstanzen

Wenn diese Einstellung auf TRUE festgelegt ist, markiert RequiresEncryption einen Namespace, sodass Clientanwendungen und Skripts eine Verbindung mit verschlüsselter Authentifizierung herstellen müssen. Die Authentifizierungsebene muss in C++ auf RPC_C_AUTHN_LEVEL_PKT_PRIVACY festgelegt werden. In Skripts oder Visual Basic muss die Authentifizierungsebene auf WbemAuthenticationLevelPktPrivacy festgelegt werden. Weitere Informationen finden Sie unter Festlegen von Namepace-Sicherheitsbeschreibungen. Der Qualifizierer wird in MOF mit dem Pragma-Namespace-Präprozessorbefehl verwendet.

Weitere Informationen finden Sie unter Festlegen der Sicherheitsebene für Standardprozesse mit C++ oder Festlegen der Sicherheitsebene für Standardprozesse mithilfe von VBScript. Skriptauthentifizierungsebenen werden in WbemAuthenticationLevelEnum definiert.

Singleton

Datentyp: boolesch

Gilt für: Klassen

Legt eine Klasse fest, die nur eine Instanz haben kann und keine Schlüsseleigenschaften enthält.

Nur der Wert TRUE (Standard) ist zulässig.

Statisch

Datentyp: boolesch

Gilt für: Methoden

Gibt an, ob eine Methode mithilfe der Klassendefinition oder ihrer Instanzen aufgerufen werden kann.

Die Methode kann nicht von einer Instanz aufgerufen werden.

SubType

Datentyp: VT_BSTR

Gilt für: Eigenschaften

Gibt an, dass eine Eigenschaft vom Typ CIM_DATETIME ein Zeitintervall und nicht eine bestimmte Zeit darstellt.

Um die Eigenschaft als Intervall zu identifizieren, muss der Wert dieses Qualifizierers „Intervall“ lauten. Alle anderen Werte für diesen Qualifizierer sind für die zukünftige Verwendung reserviert.

UUID

Datentyp: Zeichenfolge

Gilt für: Klassen

Universally Unique Identifier, der auf die Klasse angewendet wird.

ClassVersion

Datentyp: Zeichenfolge

Gilt für: Klassen

Die Versionsnummer des Klassenobjekts. Der Standardwert ist NULL. Die Versionsnummer wird erhöht, wenn Änderungen an der Klasse vorgenommen werden.

WritePrivileges

Datentyp: Zeichenfolgenarray

Gilt für: Eigenschaften

Wertesatz, der angibt, welche Systemberechtigungen für einen erfolgreichen Schreibvorgang verfügbar und aktiviert sein müssen.

Bemerkungen

Gebietsschemacodes

Ein Gebietsschemacode hat die Form „MS_<Dreistellige Sprachen-ID>“. Beispielsweise ist das englische Gebietsschema MS_409. In der folgenden Tabelle sind die Sprachen-IDs aufgeführt.

Sprache Sprachen-ID (hexadezimal)
Arabisch 401
Portugiesisch (Brasilien) 416
Chinesisch (vereinfacht) 804
Chinesisch (traditionell) 404
Tschechisch 405
Dänisch 406
Niederländisch 413
Englisch (Standard) 409
Finnisch 40b
Französisch 40c
Deutsch 407
Griechisch 408
Hebräisch 40d
Ungarisch 40e
Italienisch 410
Japanisch 411
Koreanisch 412
Norwegisch 414
Polnisch 415
Portugiesisch (Portugal) 816
Russisch 419
Spanisch c0a
Schwedisch 41D
Türkisch 41f

Verwenden des Bypass_GetObject-Qualifizierers

Die Verwendung des Bypass_GetObject-Qualifizierers für eine Methode kann zu verwirrenden Ergebnissen führen.

Im folgenden Beispiel werden die Form- und Kreis-Klassen definiert. Beachten Sie, dass die Kreis-Klasse von der Form-Klasse abgeleitet wird.

class Shape
{
   string Name;
   uint32 DrawIt();  // - draws an irregular geometric shape
};

class Circle : Shape
{
   uint32 DrawIt();  // - draws a circle
};

Der folgende Aufruf von ExecMethod verwendet ein Kreis-Objekt namens „MyCircle“, um einen Kreis zu zeichnen.

ExecMethod("Shape.Name='MyCircle'","DrawIt");

Im vorherigen Szenario ruft WMI GetObject auf; erkennt, dass "Shape.Name='MyCircle'" ein Kreis ist; und führt die Kreis-Implementierung von DrawIt aus. Wenn Sie jedoch den Bypass_GetObject-Qualifizierer für DrawIt verwenden, ruft WMI GetObject nicht auf, erkennt nicht, dass "Shape.Name='MyCircle'" ein Kreis ist, und führt die Form-Implementierung von DrawIt anstelle der Kreis--Implementierung von DrawIt aus.

Der folgende Aufruf von ExecMethod ruft immer die richtige Implementierung von DrawIt auf.

ExecMethod("Circle.Name='MyCircle'","DrawIt");

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista
Unterstützte Mindestversion (Server)
Windows Server 2008

Weitere Informationen

Festlegen von Sicherheitsbeschreibungen für Namepaces

WMI-Qualifizierer

Hinzufügen eines Qualifizierers