WMI System Classes
The WMI system classes are a collection of predefined classes based on the Common Information Model (CIM). Unlike classes supplied by providers, the system classes are not declared in a Managed Object Format (MOF) file. WMI creates a set of these classes whenever a new WMI namespace is created.
Objects from the system classes are used to support WMI activities, such as: event and provider registration, security, and event notification. Some objects are temporary, and some are stored in the repository as instances of the system classes.
System classes follow a naming convention that consists of a double-underscore (__) followed by the class name. When you write an MOF file to define classes for a WMI provider, Mofcomp.exe does not compile any class with an initial double-underscore (__) because that is reserved for WMI system class names.
The documentation for the system classes includes only the nonsystem local properties. Links are provided in class definitions so that you can navigate the class hierarchy quickly and easily.
WMI System Classes
The following table lists the various system classes.
System class | Description |
---|---|
__AbsoluteTimerInstruction | Causes an event to be generated on a specific date at a specific time. |
__ACE | Represents an access control entry (ACE). |
__AggregateEvent | Represents an aggregate event of several individual intrinsic or extrinsic events. |
__ArbitratorConfiguration | Configuration class that limits the internal resources that are used by operations initiated by WMI clients. |
__CacheControl | Determines when WMI should release a Component Object Model (COM) object. |
__CIMOMIdentification | Describes the local installation of WMI. |
__ClassCreationEvent | Represents a class creation event, which is a type of intrinsic event generated when a new class is added to the namespace. |
__ClassDeletionEvent | Represents a class deletion event, which is a type of intrinsic event generated when a class is removed from the namespace. |
__ClassModificationEvent | Represents a class modification event, which is a type of intrinsic event generated when a class is changed in the namespace. |
__ClassOperationEvent | A base class for all intrinsic events that relate to a class. |
__ClassProviderRegistration | Registers class providers in WMI. |
__ConsumerFailureEvent | Represents the occurrence of some other event that is being dropped because of the failure of an event consumer. |
__Event | An abstract base class that serves as the parent class for all intrinsic and extrinsic events. |
__EventConsumer | An abstract base class that is used in the registration of a permanent event consumer. |
__EventConsumerProviderCacheControl | Determines when WMI should release an event consumer provider. |
__EventConsumerProviderRegistration | Registers event consumer providers with WMI. |
__EventDroppedEvent | Represents the occurrence of an event that is dropped. A dropped event is an event that is not delivered to an event consumer. |
__EventFilter | Registration of a permanent event consumer requires an instance of the __EventFilter system class. |
__EventGenerator | Serves as a parent class for classes that control the generation of events, such as timer events. |
__EventProviderCacheControl | Controls when an event provider is unloaded. |
__EventProviderRegistration | Registers event providers with WMI. |
__EventQueueOverflowEvent | Reports when an event is dropped as a result of delivery queue overflow. |
__EventSinkCacheControl | Used to determine when WMI releases an event consumer provider's IWbemUnboundObjectSink pointer. |
__ExtendedStatus | Used to report detailed status and error information. |
__ExtrinsicEvent | Serves as a parent class for all user-defined event types, also known as extrinsic events. |
__FilterToConsumerBinding | Used in the registration of permanent event consumers to relate an instance of the of __EventConsumer to an instance of __EventFilter. |
__IndicationRelated | Serves as a parent class for all event-related classes. |
__InstanceCreationEvent | Reports an instance creation event, which is a type of intrinsic event that is generated when a new instance is added to the namespace. |
__InstanceDeletionEvent | Reports an instance deletion event, which is a type of intrinsic event generated when an instance is deleted from the namespace. |
__InstanceModificationEvent | Reports an instance modification event, which is a type of intrinsic event generated when an instance changes in the namespace. |
__InstanceOperationEvent | Serves as a base class for all intrinsic events that relate to an instance. |
__InstanceProviderRegistration | Registers instance providers in WMI. |
__IntervalTimerInstruction | Generates events at intervals, similar to a WM_TIMER message in Windows programming. |
__MethodInvocationEvent | This class is not implemented. |
__MethodProviderRegistration | Registers method providers with WMI. |
__Namespace | Represents a WMI namespace. |
__NamespaceCreationEvent | Reports a namespace creation event, which is a type of intrinsic event generated when a new namespace is added to the current namespace. |
__NamespaceDeletionEvent | Reports a namespace deletion event, which is a type of intrinsic event that is generated when a sub-namespace is removed from the current namespace. |
__NamespaceModificationEvent | Reports a namespace modification event, which is a type of intrinsic event that is generated when a namespace is modified. |
__NamespaceOperationEvent | A base class for all intrinsic events that relate to a namespace. |
__NotifyStatus | Serves as the parent class for provider-defined error classes. |
__NTLMUser9X | Controls remote access to a computer running unsupported versions of Windows. |
__ObjectProviderCacheControl | Controls when a class or instance provider is unloaded. |
__ObjectProviderRegistration | Serves as the parent for classes that are used to register class and instance providers in WMI. |
__PARAMETERS | Defines the input and output parameters for methods. |
__PropertyProviderCacheControl | Controls the cache when a property provider is unloaded. |
__PropertyProviderRegistration | Registers property providers in WMI. |
__Provider | Serves as the parent class for the __Win32Provider system class. |
__ProviderHostQuotaConfiguration | Allows limits to be set on host process usage of system resources. |
__ProviderRegistration | Serves as the parent class for registration classes for various types of providers. |
__SecurityDescriptor | Represents a security descriptor. |
__SecurityRelatedClass | Serves as a parent class for all types of security classes. |
__SystemClass | Base class from which most system classes derive. |
__SystemEvent | Represents a system event. |
__SystemSecurity | Contains methods that let you access and modify the security settings for a namespace. |
__thisNAMESPACE | Holds the security rights for the namespace in the form of a security descriptor. |
__TimerEvent | Reports an event generated by WMI in response to a consumer's request for an interval timer event or an absolute timer event. |
__TimerInstruction | Specifies instructions on how timer events should be generated for consumers. |
__TimerNextFiring | Reserved for operating system use. |
__Trustee | Represents a trustee. Either a name or a SID (byte array) can be used. |
__Win32Provider | Registers information about a provider's physical implementation in WMI. |