// (c) 1998-1999 Microsoft Corporation. All rights reserved. #pragma autorecover #pragma classflags("forceupdate") Qualifier Description : ToSubClass Amended; Qualifier Values : ToSubClass Amended; Qualifier DisplayName : Amended; Qualifier BitValues:ToSubClass Amended ; Qualifier Aggregate : ToSubClass ; Qualifier ValueMap : ToSubClass ; Qualifier Aggregation : ToSubClass ; Qualifier ArrayType : ToSubClass ; Qualifier Association : ToInstance ToSubClass DisableOverride ; Qualifier BitMap : ToSubClass ; Qualifier CIM_Key : ToSubClass ; Qualifier CIMTYPE : ToSubClass ; Qualifier Deprecated : ToSubClass ; Qualifier Enumeration : ToSubClass ; Qualifier EnumPrivileges : ToSubClass ; Qualifier ImplementationSource : ToSubClass ; Qualifier Key : ToInstance ToSubClass DisableOverride ; Qualifier Locale : ToInstance ; Qualifier MappingStrings : ToSubClass ; Qualifier Max : ToSubClass ; Qualifier MaxLen : ToSubClass ; Qualifier Min : ToSubClass ; Qualifier ModelCorrespondence : ToSubClass ; Qualifier Not_Null : ToSubClass ; Qualifier Override : Restricted ; Qualifier Privileges : ToSubClass ; Qualifier Propagated : ToSubClass ; Qualifier provider : ToInstance ; Qualifier Range : ToSubClass ; Qualifier Read : ToSubClass ; Qualifier Schema : ToInstance ; Qualifier Singleton : ToSubClass ToInstance ; Qualifier SUBTYPE : ToSubClass ; Qualifier Units : ToSubClass ; Qualifier UUID : ToInstance ; Qualifier Volatile : ToSubClass ; Qualifier Weak : ToSubClass ; Qualifier Write : ToSubClass ; Qualifier WritePrivileges : ToSubClass ; #pragma namespace ("\\\\.\\Root\\CIMV2") instance of __Win32Provider as $ShutdownEvent { Name = "MS_Shutdown_Event_Provider"; ClsId = "{A3E41207-BE04-492a-AFF0-19E880FF7545}"; HostingModel = "LocalSystemHost"; }; [Locale (0x409), Abstract, Description ( "The CollectionOfMSEs object allows the grouping of Managed" "SystemElements for the purposes of associating Settings and " "Configurations. It is abstract to require further definition " "and semantic refinement in subclasses. The CollectionOfMSEs " "object does not carry any state or status information, but " "only represents a grouping or 'bag' of Elements. For this " "reason, it is incorrect to subclass groups that have state/" "status from CollectionOfMSEs - an example is CIM_Redundancy" "Group (which is correctly subclassed from LogicalElement).\n" "Collections typically aggregate 'like' objects, and represent " "an optimization. Without Collections, one is forced to define " "individual ElementSetting and ElementConfiguration " "associations, to tie Settings and Configuration objects to " "individual ManagedSystemElements. There may be much " "duplication in assigning the same Setting to multiple objects. " "In addition, using the Collection object allows the " "determination that the Setting and Configuration associations " "are indeed the same for the Collection's members. This " "information would otherwise be obtained by defining the " "Collection in a proprietary manner, and then querying " "the ElementSetting and ElementConfiguration associations to " "determine if the Collection set is completely covered.") ] class CIM_CollectionOfMSEs { [MaxLen (256), Description ( "The identification of the Collection object. When subclassed, " "the CollectionID property can be overridden to be a Key " "property.") ] string CollectionID; [MaxLen (64), Description ( "A short textual description (one-line string) of the " "CollectionOfMSEs object.") ] string Caption; [Description ( "A textual description of the CollectionOfMSEs object.") ] string Description; }; [Locale (0x409),Abstract, Association, Aggregation, Description ( "CIM_CollectedMSEs is a generic association used to " "establish the members of the grouping object, CollectionOf" "MSEs.") ] class CIM_CollectedMSEs { [Aggregate, CIM_Key, Description ( "The grouping or 'bag' object that represents the " "Collection.") ] CIM_CollectionOfMSEs REF Collection; [CIM_Key, Description ("The members of the Collection.") ] CIM_ManagedSystemElement REF Member; }; [Locale (0x409), Abstract, Association, Aggregation, Description ( "CIM_CollectedCollections is an aggregation association " "representing that a CollectionOfMSEs may itself be contained " "in a CollectionOfMSEs.") ] class CIM_CollectedCollections { [Aggregate, CIM_Key, Description ( "The 'higher level' or parent element in the aggregation.") ] CIM_CollectionOfMSEs REF Collection; [CIM_Key, Description ("The 'collected' Collection.") ] CIM_CollectionOfMSEs REF CollectionInCollection; }; [Locale (0x409), Abstract, Association, Description ( "CollectionSetting represents the association between a " "CollectionOfMSEs class and the Setting class(es) defined for " "them.") ] class CIM_CollectionSetting { [CIM_Key, Description ("The CollectionOfMSEs.") ] CIM_CollectionOfMSEs REF Collection; [CIM_Key, Description ( "The Setting object associated with the Collection.") ] CIM_Setting REF Setting; }; [Locale (0x409), Association, Abstract, Description ( "CIM_LogicalIdentity is an abstract and generic association, " "indicating that two LogicalElements represent different " "aspects of the same underlying entity. This relationship " "conveys what could be defined with multiple inheritance. It " "is restricted to the 'logical' aspects of a ManagedSystem" "Element. In most scenarios, the Identity relationship is " "determined by the equivalence of Keys or some other " "identifying properties of the related Elements. The " "association should only be used in well understood scenarios. " "This is why the association is abstract - allowing more " "concrete definition and clarification in subclasses. One of " "the scenarios where this relationship is reasonable is to " "represent that a Device is both a 'bus' entity and a " "'functional' entity. For example, a Device could be both a " "USB (bus) and a Keyboard (functional) entity.") ] class CIM_LogicalIdentity { [Key, Description( "SystemElement represents one aspect of the Logical" "Element.") ] CIM_LogicalElement ref SystemElement; [Key, Description( "SameElement represents an alternate aspect of the " "System entity.") ] CIM_LogicalElement ref SameElement; }; [Abstract, Description ("This class represents an association " "between a managed system element collection and the class " "representing statistical information about the collection."), Locale (0x409), UUID ("{13FFA73F-25AA-4b66-B63C-B635514678C5}") ] class Win32_CollectionStatistics { [Description("This property is a reference to the instance that " "contains statistical information about a collection.")] CIM_StatisticalInformation REF Stats; [Description("This property is a reference to an instance of " "a collection of managed system elements.")] CIM_CollectionOfMSEs REF Collection; }; [Description ("This event class represents events related to a " "computer sytem."), Locale (0x409), UUID ("{999A286E-CF9C-4f0c-8F0F-827C4C0D9CC6}")] class Win32_ComputerSystemEvent : __ExtrinsicEvent { [Read, Description ("The MachineName property contains the name of the " "machine for which the event had occurred.")] string MachineName; }; [Description ("This event class represents events " "when a computer has begun the process of shutting down."), Locale (0x409), UUID ("{A6B834B1-F974-4445-8F2E-FC996638B350}")] class Win32_ComputerShutdownEvent : Win32_ComputerSystemEvent { [Read, Description ("The Type property contains the type of shutdown " "that was initiated. This event pertains to both shutdown as " "well as reboots of the system."), Values {"Log Off", "Shutdown or Reboot"}] uint32 Type; }; [Dynamic, Provider("CIMWin32a"), Description ( "The Win32_USBHub class represents the management characterisitics " "of a USB Hub."), Locale (0x409), UUID ("{52E56374-B17E-41DC-00EC-FC3E6E8D8783}") ] class Win32_USBHub : CIM_USBHub { [read: ToSubClass, Key: ToSubClass, MaxLen (256): ToSubClass, Override ("DeviceID"): ToSubClass, Description ( "The DeviceID property DeviceID is an address or other identifying " "information which uniquely identifies the USBHub."): ToSubClass, MappingStrings {""}: ToSubClass] string DeviceID; [read: ToSubClass, Override ("Name"): ToSubClass, Description ( "The Name property indicates the name of the USB Hub."): ToSubClass, MappingStrings {""}: ToSubClass] string Name; }; [Dynamic, Provider("CIMWin32a"), Description ( "USBControllerHasHub defines the Hub(s) that are downstream " "of the USBController."), Locale (0x409) ] class Win32_ControllerHasHub : CIM_USBControllerHasHub { [Read, Key, Override ("Antecedent"), Min(1), Max(1), Description ("The USBController.") ] Win32_USBController REF Antecedent; [Read, Key, Override ("Dependent"), Min(1), Description ( "The USBHub that is associated with the Controller.") ] Win32_USBHub REF Dependent; }; [Dynamic, Provider ("CIMWin32a") , Description ( "The Win32_PhysicaMedia class represents any type of documentation or " "storage medium, such as tapes, CD ROMs, etc."): ToSubClass, Locale (0x409), UUID ("{BF253431-1E4D-4F57-00E7-64B2CACC801E}") ] class Win32_PhysicalMedia : CIM_PhysicalMedia { [read: ToSubClass, Key: ToSubClass, MaxLen (256): ToSubClass, Override ("Tag"): ToSubClass, Description ("The Tag property uniquely " "identifies the physical media in the system." "\nExample: \\\\PHYSICALDRIVE0"): ToSubClass, MappingStrings {""}: ToSubClass] string Tag; [read: ToSubClass, Override ("SerialNumber"): ToSubClass, Description ("The Serial number property is a manufacturer-allocated " "number used to identify the physicalmedia. \nExample: WD-WM3493798728 " "for a disk serial number."): ToSubClass, MappingStrings {""}: ToSubClass] string SerialNumber; }; [Dynamic, Provider ("CIMWin32a") , Description ( "The Win32_PhysicalElementsOfDiskDrive association defines the " "mapping between a disk drive and the physical components that " "implement it."): ToSubClass, Locale (0x409), UUID ("{}") ] class Win32_DiskDrivePhysicalMedia: CIM_Realizes { [Read: ToSubClass, Key: ToSubClass, Override ("Antecedent"): ToSubClass, Description ("The Antecedent reference represents the physical component " "that implements the DiskDrive device."): ToSubClass, MappingStrings {""}: ToSubClass] Win32_PhysicalMedia REF Antecedent; [Read: ToSubClass, Key: ToSubClass, Override ("Dependent"): ToSubClass, Description ("The Dependent reference represents the disk drive."): ToSubClass, MappingStrings {""}: ToSubClass] Win32_DiskDrive REF Dependent; }; [Dynamic, Provider ("CIMWin32a"), Description ( "The Win32_NTDomain class represents a NT Domain. A " "domain is a single security boundary of a Windows NT computer " "network. Active Directory is made up of one or more domains. On a " "standalone workstation, the domain is the computer itself. A domain " "can span more than one physical location. Every domain has its own " "security policies and security relationships with other domains. " "When multiple domains are connected by trust relationships and share " "a common schema, configuration, and global catalog, you have a domain " "tree. Multiple domain trees can be connected together into a forest. " "All the domains in a forest also share a common schema, configuration, " "and global catalog."): ToSubClass, Locale (0x409), UUID ("78F4FA18-EE46-4D4C-AB9B-8CC0D42B7038") ] class Win32_NTDomain: CIM_System { [read : ToSubClass, Description ("The DomainControllerName property indicates the " "computer name of the discovered domain controller."): ToSubClass] string DomainControllerName; [read : ToSubClass, Description ("The DomainControllerAddress property indicates the " "address of the discovered domain controller."): ToSubClass] string DomainControllerAddress; [read : ToSubClass, Description ("Indicates the type of address specified in " "DomainControllerAddress. The following valid values are presented " "in order, DS_INET_ADDRESS = Address is a string IP address (for " "example, \\\\157.55.94.74) of the domain controller. " "DS_NETBIOS_ADDRESS = The NetBIOS name (for example, \\\\phoenix) " "of the domain controller."): ToSubClass, ValueMap {"1", "2"}, Values {"DS_INET_ADDRESS", "DS_NETBIOS_ADDRESS"}] sint32 DomainControllerAddressType; [read : ToSubClass , Description ("The GUID of the domain. This member will " "be zero if the domain controller does not have a Domain GUID " "(for example, the domain controller is not a Windows 2000 domain " "controller)."): ToSubClass] string DomainGuid; [read : ToSubClass, Description ("The DomainName property indicates the name of the " "domain. The DNS-style name (for example, microsoft.com.) will " "be returned if available. "): ToSubClass] string DomainName; [read : ToSubClass, Description ("The DnsForestName property indicates the name of " "the domain at the root of the DS tree. The DNS-style name (for " "example, microsoft.com.) will be returned if available. "): ToSubClass] string DnsForestName; [read : ToSubClass, Description ("Directory Service (DS) flag indicating that the " "domain controller is the Primary Domain Controller (PDC) of " "the domain."): ToSubClass] boolean DSPrimaryDomainControllerFlag; [read : ToSubClass, Description ("Directory Service (DS) flag indicating that the " "domain controller hosts a write able DS or Security Accounts " "Manager (SAM)."): ToSubClass] boolean DSWritableFlag; [read : ToSubClass, Description ("Directory Service (DS) flag indicating that the domain " "controller is a Global Catalog (GC) server for DnsForestName."): ToSubClass] boolean DSGlobalCatalogFlag; [read : ToSubClass, Description ("Directory Service (DS) flag indicating that the " "domain controller is a directory service server for the domain."): ToSubClass] boolean DSDirectoryServiceFlag; [read : ToSubClass, Description ("Directory Service (DS) flag indicating that the domain " "controller is a Kerberos Key Distribution Center for the domain."): ToSubClass] boolean DSKerberosDistributionCenterFlag; [read : ToSubClass, Description ("Directory Service (DS) flag indicating that the domain " "controller is running the Windows Time service for the domain."): ToSubClass] boolean DSTimeServiceFlag; [read : ToSubClass, Description ("Directory Service (DS) flag indicating that the " "Domain Controller Name is in DNS format (for example, " "www.mynode.com or 135.5.33.19)."): ToSubClass] boolean DSDnsControllerFlag; [read : ToSubClass, Description ("Directory Service (DS) flag indicating that the " "DomainName is in DNS format(for example, www.mynode.com or " "135.5.33.19)."): ToSubClass] boolean DSDnsDomainFlag; [read : ToSubClass, Description ("Directory Service (DS) flag indicating that the " "DnsForestName is in DNS format (for example, www.mynode.com " "or 135.5.33.19)."): ToSubClass] boolean DSDnsForestFlag; [read : ToSubClass, Description ("The DcSiteName property indicates the name of " "the site where the domain controller is located. This value " "may be NULL if the domain controller is not in a site (for " "example, the domain controller is a Windows NT 4.0 domain " "controller)."): ToSubClass] string DcSiteName; [read : ToSubClass, Description ("The ClientSiteName property indicates the name " "of the site where the domain controller is configured to be " "in. This value may be NULL if the site that the computer named " "by ComputerName cannot be found (for example, if the DS " "administrator has not associated the subnet that the computer " "is in with a valid site)."): ToSubClass] string ClientSiteName; }; //RuleBased("Select * From " // "Win32_NTDomain As A " // "Join " // "Win32_UserAccount As B " // "On A.DomainName = B.Domain") [Dynamic, Provider ("CIMWin32a"), Description ("The Win32_UserInDomain relationship identifies the " "user accounts associated with a NT domain."), Locale (0x409), UUID ("B38813CF-0673-495C-A12F-384D47BDF1ED") ] class Win32_UserInDomain: CIM_Component { [Read, key, Description ("The Antecedent reference represents the domain " "the user account exists in."), MappingStrings {"WMI|Win32_NTDomain"}] Win32_NTDomain REF GroupComponent; [Read, key, Description ("The Dependent reference represents the user " "accounts that exists on the domain."), MappingStrings {"WMI|Win32_UserAccount"}] Win32_UserAccount REF PartComponent; }; //RuleBased("Select * From " // "Win32_NTDomain As A " // "Join " // "Win32_Group As B " // "On A.DomainName = B.Domain") [Dynamic, Provider ("CIMWin32a"), Description ("The Win32_GroupInDomain relationship identifies the " "group accounts associated with a NT domain."), Locale (0x409), UUID ("C1717231-5F16-4AE6-966F-6CA856B7AAF6") ] class Win32_GroupInDomain: CIM_Component { [Read, key, Description ("The Antecedent reference represents the domain " "the user account exists in."), MappingStrings {"WMI|Win32_NTDomain"}] Win32_NTDomain REF GroupComponent; [Read, key, Description ("The Dependent reference represents the group " "accounts that exists on the domain."), MappingStrings {"WMI|Win32_Group"}] Win32_Group REF PartComponent; }; instance of __EventProviderRegistration { Provider = $ShutdownEvent; EventQueryList = {"select * from Win32_ComputerShutdownEvent"}; };