Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

500 lines
18 KiB

// (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"};
};