Standard WMI Qualifiers
Applies to: desktop apps only
The following table lists standard qualifiers specific to WMI.
| Qualifier | Description |
|---|---|
| Amendment | Data type: boolean Applies to: classes Indicates that a class contains amended qualifiers that are localized. The default is TRUE. The associated class can be translated. To access the translated version, use the locale identifier to construct a namespace name. |
| Bypass_GetObject | Data type: boolean Applies to: methods Indicates that the method call should pass directly to the ExecMethodAsync call of the provider rather than the provider first making a call to GetObject to validate the object path. The default is FALSE. Using Bypass_GetObject can significantly improve performance. Before using Bypass_GetObject, ensure that neither of the following actions are taken:
|
| CIM_Key | Data type: CIM_BOOLEAN Applies to: properties Indicates that the associated property is a key property in CIM but not in WMI. |
| CIMType | Data type: VT_BSTR Applies to: properties, methods, parameters Contains text describing the type of a property. |
| ClassContext | Data type: VT_BSTR Applies to: classes Indicates that a class has instances associated with more information dynamically supplied by a provider. |
| Deprecated | Data type: CIM_BOOLEAN Applies to: properties, classes Indicates the property has been superseded by another property. |
| Display |
Applies to: classes, properties The UUID of the associated class. |
| Dynamic | Data type: boolean Applies to: classes, properties Indicates a class whose instances are created dynamically. The value of this qualifier must be set to TRUE. |
| DynProps | Data type: boolean Applies to: classes, instances Indicates that an instance contains values provided by dynamic property providers. The default is TRUE. You must specify this qualifier on such an instance. Only the value TRUE is allowed. |
| Fixed | Data type: CIM_BOOLEAN Applies to: instances Indicates that the value of this property cannot change during the lifetime of the instance. |
| ID | Data type: VT_I4 Applies to: properties, parameters Uniquely identifies and sequences a property or method parameter when MOF statements are generated automatically. This qualifier is required for method parameters only. When creating parameters for a method, class designers should begin with Id(0) for the first parameter and use each successive integer for each successive parameter. If the ID qualifiers are unintentionally omitted, the MOF compiler generates ID qualifiers automatically. |
| Implemented | Data type: boolean Applies to: methods Indicates that a method has an implementation supplied by a provider. |
| InstanceContext | Data type: VT_BSTR Applies to: instances Indicates that an instance contains values provided by a dynamic property provider. The value is passed to the property provider as an argument to the IWbemPropertyProvider::GetProperty method. |
| Locale | Data type: VT_BSTR Applies to: classes or instances Specifies the language of origin for a class or instance. For more information about locale values, see Locale Codes. |
| NamespaceSecuritySDDL | Data type: string array Applies to: namespace instances Specifies a security descriptor for the namespace in SDDL format. For more information, see Setting Namespace Security When the Namespace is Created. The SDDL string is processed by WMI to establish the namespace security but not stored as a string. If no security descriptor is specified, the default security is used. For more information, see Setting Namepace Security Descriptors. |
| Optional | Data type: boolean Applies to: parameters Indicates that a parameter is not required, and that it has a well-behaved default value. |
| Privileges | Data type: string array Applies to: properties, methods Set of values used to inform the client which privileges are required to create instances, fill in properties, or perform methods. The default is FALSE. |
| PropertyContext | Data type: VT_BSTR Applies to: properties Indicates that an instance property contains values provided by dynamic property providers. You must specify this qualifier on such a property. The value is passed to the property provider as an argument to IWbemPropertyProvider::GetProperty. |
| Provider | Data type: VT_BSTR Applies to: classes The value of this qualifier is the name of the dynamic provider that provides class instances and refreshes instance data. This name must be registered with WMI by creating an instance of the __Win32Provider class with the Name property containing this name. When this qualifier is specified on a class whose instances are provided dynamically, the Dynamic qualifier must also be specified. |
| RequiresEncryption | Data type: boolean Applies to: namespace instances If set to TRUE, RequiresEncryption marks a namespace so that client applications and scripts must connect with encrypted authentication. The authentication level must be set to RPC_C_AUTHN_LEVEL_PKT_PRIVACY in C++. In scripting or Visual Basic, authentication level must be set to WbemAuthenticationLevelPktPrivacy. For more information, see Setting Namepace Security Descriptors. The qualifier is used in MOF with the pragma namespace preprocessor command. For more information, see Setting the Default Process Security Level Using C++ or Setting the Default Process Security Level Using VBScript. Scripting authentication levels are defined in WbemAuthenticationLevelEnum.
|
| Singleton | Data type: boolean Applies to: classes Designates a class that can only have one instance and that does not contain key properties. Only the value TRUE (default) is allowed. |
| Static | Data type: boolean Applies to: methods Indicates whether a method can called by using the class definition or its instances. The method cannot be invoked from an instance. |
| SubType | Data type: VT_BSTR Applies to: properties Indicates that a property of type CIM_DATETIME represents a time interval rather than a specific time. To identify the property as an interval, the value of this qualifier must be "interval". All other values for this qualifier are reserved for future use. |
| UUID | Data type: string Applies to: classes Universally unique identifier applied to the class. |
| WritePrivileges | Data type: string array Applies to: properties Set of values indicating which system privileges must be available and enabled for a successful write operation. |
Remarks
Locale Codes
A locale code is of the form "MS_<Three Digit Language ID>". For example, English locale is MS_409. The following table lists the language IDs.
| Language | Language ID (hexadecimal) |
|---|---|
| Arabic | 401 |
| Portuguese (Brazil) | 416 |
| Chinese (Simplified) | 804 |
| Chinese (Traditional) | 404 |
| Czech | 405 |
| Danish | 406 |
| Dutch | 413 |
| English (default) | 409 |
| Finnish | 40b |
| French | 40c |
| German | 407 |
| Greek | 408 |
| Hebrew | 40d |
| Hungarian | 40e |
| Italian | 410 |
| Japanese | 411 |
| Korean | 412 |
| Norwegian | 414 |
| Polish | 415 |
| Portuguese (Portugal) | 816 |
| Russian | 419 |
| Spanish | c0a |
| Swedish | 41D |
| Turkish | 41f |
Using the Bypass_GetObject Qualifier
Using the Bypass_GetObject qualifier on a method can produce confusing results.
The following example defines the Shape and Circle classes. Note that the Circle class is derived from the Shape class.
class Shape { string Name; uint32 DrawIt(); // - draws an irregular geometric shape }; class Circle : Shape { uint32 DrawIt(); // - draws a circle };
The following call to ExecMethod uses a Circle object named "MyCircle" to draw a circle.
In the previous scenario, WMI calls GetObject; discovers that "Shape.Name='MyCircle'" is a Circle; and executes the Circle implementation of DrawIt. However, if you use the Bypass_GetObject qualifier on DrawIt, WMI does not call GetObject, does not discover that "Shape.Name='MyCircle'" is a Circle, and executes the Shape implementation of DrawIt instead of the Circle implementation of DrawIt.
The following call to ExecMethod always invokes the correct implementation of DrawIt.
Requirements
|
Minimum supported client | Windows 2000 Professional |
|---|---|
|
Minimum supported server | Windows 2000 Server |
See also
Send comments about this topic to Microsoft
Build date: 3/9/2012