Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

Standard WMI Qualifiers

The following table lists standard qualifiers specific to WMI.

QualifierDescription
AmendmentData 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_GetObjectData 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:

  • Derive a class from your class.
  • Override the method that has the Bypass_GetObject qualifier.
Failure to follow these precautions can result in invoking the method implementation of the parent class instead of the child class. For more information, see Using the Bypass_GetObject Qualifier.
CIM_KeyData 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.

ClassContextData type: VT_BSTR

Applies to: classes

Indicates that a class has instances associated with more information dynamically supplied by a provider.

DeprecatedData 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.

DynPropsData 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.

FixedData type: CIM_BOOLEAN

Applies to: instances

Indicates that the value of this property cannot change during the lifetime of the instance.

IDData 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.

ImplementedData type: boolean

Applies to: methods

Indicates that a method has an implementation supplied by a provider.

InstanceContextData 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.

LocaleData 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.

NamespaceSecuritySDDLData 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.

OptionalData type: boolean

Applies to: parameters

Indicates that a parameter is not required, and that it has a well-behaved default value.

PrivilegesData 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.

PropertyContextData 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.

ProviderData 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.

RequiresEncryptionData 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.

Windows Server 2003 and Windows XP:  Before Windows Server 2003 with SP1, providers could not set namespace security to require encryption before returning data.

SingletonData 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.

StaticData 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.

SubTypeData 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.

UUIDData type: string

Applies to: classes

Universally unique identifier applied to the class.

WritePrivilegesData 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.

LanguageLanguage ID (hexadecimal)
Arabic401
Portuguese (Brazil)416
Chinese (Simplified)804
Chinese (Traditional)404
Czech405
Danish406
Dutch413
English (default)409
Finnish40b
French40c
German407
Greek408
Hebrew40d
Hungarian40e
Italian410
Japanese411
Korean412
Norwegian414
Polish415
Portuguese (Portugal)816
Russian419
Spanishc0a
Swedish41D
Turkish41f

 

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.

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

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.

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

Requirements

Minimum supported client

Windows XP

Minimum supported server

Windows Server 2003

See also

Setting Namepace Security Descriptors

 

 

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.