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.

192 lines
6.1 KiB

  1. // (c) 1998-1999 Microsoft Corporation. All rights reserved.
  2. #pragma autorecover
  3. #pragma classflags("forceupdate")
  4. Qualifier Description : ToSubClass Amended;
  5. Qualifier Values : ToSubClass Amended;
  6. Qualifier DisplayName : Amended;
  7. Qualifier BitValues:ToSubClass Amended ;
  8. Qualifier Aggregate : ToSubClass ;
  9. Qualifier ValueMap : ToSubClass ;
  10. Qualifier Aggregation : ToSubClass ;
  11. Qualifier ArrayType : ToSubClass ;
  12. Qualifier Association : ToInstance ToSubClass DisableOverride ;
  13. Qualifier BitMap : ToSubClass ;
  14. Qualifier CIM_Key : ToSubClass ;
  15. Qualifier CIMTYPE : ToSubClass ;
  16. Qualifier Deprecated : ToSubClass ;
  17. Qualifier Enumeration : ToSubClass ;
  18. Qualifier EnumPrivileges : ToSubClass ;
  19. Qualifier ImplementationSource : ToSubClass ;
  20. Qualifier Key : ToInstance ToSubClass DisableOverride ;
  21. Qualifier Locale : ToInstance ;
  22. Qualifier MappingStrings : ToSubClass ;
  23. Qualifier Max : ToSubClass ;
  24. Qualifier MaxLen : ToSubClass ;
  25. Qualifier Min : ToSubClass ;
  26. Qualifier ModelCorrespondence : ToSubClass ;
  27. Qualifier Not_Null : ToSubClass ;
  28. Qualifier Override : Restricted ;
  29. Qualifier Privileges : ToSubClass ;
  30. Qualifier Propagated : ToSubClass ;
  31. Qualifier provider : ToInstance ;
  32. Qualifier Range : ToSubClass ;
  33. Qualifier Read : ToSubClass ;
  34. Qualifier Schema : ToInstance ;
  35. Qualifier Singleton : ToSubClass ToInstance ;
  36. Qualifier SUBTYPE : ToSubClass ;
  37. Qualifier Units : ToSubClass ;
  38. Qualifier UUID : ToInstance ;
  39. Qualifier Volatile : ToSubClass ;
  40. Qualifier Weak : ToSubClass ;
  41. Qualifier Write : ToSubClass ;
  42. Qualifier WritePrivileges : ToSubClass ;
  43. #pragma namespace ("\\\\.\\Root\\CIMV2")
  44. instance of __Win32Provider as $DskQuotaProvider
  45. {
  46. Name = "DskQuotaProvider";
  47. ClsId = "{4AF3F4A4-06C8-4b79-A523-633CC65CE297}";
  48. HostingModel = "NetworkServiceHost";
  49. };
  50. instance of __InstanceProviderRegistration
  51. {
  52. Provider = $DskQuotaProvider;
  53. SupportsGet = TRUE;
  54. SupportsPut = TRUE;
  55. SupportsDelete = TRUE;
  56. SupportsEnumeration = TRUE;
  57. QuerySupportLevels = {"WQL:UnarySelect"};
  58. };
  59. // cleanup of classes whose names were changed
  60. // after Whistler Beta 1
  61. #pragma deleteclass("Win32_QuotaSettings", NOFAIL)
  62. [Association, Dynamic, Provider ("DskQuotaProvider"),
  63. Description ("The Win32_DiskQuota association class tracks disk space "
  64. "usage for NTFS volumes. System administrators can configure Windows "
  65. "to prevent further disk space use and log an event when a user exceeds "
  66. "a specified disk space limit. They can also log an event when a user "
  67. "exceeds a specified disk space warning level. Note that disk quotas "
  68. "cannot be set for the Administrator accounts themselves."),
  69. Locale(0x409), UUID("B94560CA-41CC-4FB5-BD56-282329DA41DA"),
  70. SupportsCreate, CreateBy("PutInstance"),SupportsDelete, DeleteBy("DeleteInstance"),
  71. SupportsUpdate]
  72. class Win32_DiskQuota
  73. {
  74. [read, key, Description ("The QuotaVolume reference represents the "
  75. "disk volume which has disk quotas.")
  76. ]
  77. Win32_LogicalDisk REF QuotaVolume;
  78. [read, key, Description ("The User reference represents the user "
  79. "account associated with a disk quota.")
  80. ]
  81. Win32_Account REF User;
  82. [read, Description ("A Status property indicates the current status "
  83. "of the Disk Quota."),
  84. ValueMap {"0","1","2"},
  85. Values {"OK", "Warning", "Exceeded"}
  86. ]
  87. uint32 Status;
  88. [read, write, Units ("Bytes"), Description ("The Limit property indicates "
  89. "the limit set for this particular user or group.")
  90. ]
  91. uint64 Limit;
  92. [read, write, Units ("Bytes"), Description ("The WarningLimit property "
  93. "indicates the warning limit set for this particular user or group.")
  94. ]
  95. uint64 WarningLimit;
  96. [read, Units ("Bytes"), Description ("The DiskSpaceUsed property indicates "
  97. "the current number of Bytes currently in use by this particular "
  98. "user or group.")
  99. ]
  100. uint64 DiskSpaceUsed;
  101. };
  102. [Dynamic, Provider ("DskQuotaProvider"),
  103. Description ("The Win32_QuotaSetting class contains setting information "
  104. "for disk quotas on a volume."), SupportsUpdate,
  105. Locale(0x409), UUID("29013152-7F77-4A8A-A8BB-E1F24DECE9F7")]
  106. class Win32_QuotaSetting : CIM_Setting
  107. {
  108. [read, write, key, Description ("The VolumePath property indicates the "
  109. "name of the volume that disk quotas are on. It can be volume name, "
  110. "volume path (ex D:\\) or it can be the unique volume name like "
  111. "\\\\?Volume{GUID}\\.")
  112. ]
  113. string VolumePath;
  114. [read, write, Description ("The State property indicates what the "
  115. "level of quota management set for this particular volume. Disabled "
  116. "indicates that Quota management is not enabled on this volume. Tracked "
  117. "indicates that Quota's are tracked but the limit value is not enforced "
  118. "and users may exceed their quota limit. Enforced indicates that "
  119. "Quota's are tracked and enforce on this volume."),
  120. ValueMap {"0","1","2"},
  121. Values {"Disabled", "Tracked", "Enforced"}
  122. ]
  123. uint32 State;
  124. [read, write, Units ("Bytes"), Description ("The DefaultLimit property "
  125. "indicates the default limit set for quotas on this particular volume.")
  126. ]
  127. uint64 DefaultLimit;
  128. [read, write, Units ("Bytes"), Description ("The DefaultWarningLimit "
  129. "property indicates the default warning limit set for quotas on this "
  130. "particular volume.")
  131. ]
  132. uint64 DefaultWarningLimit;
  133. [read, write, Description ("The ExceedNotification property indicates "
  134. "whether or not events will be written to the event log when quotas are "
  135. "exceeded.")
  136. ]
  137. boolean ExceededNotification;
  138. [read, write, Description ("The WarningExceedNotification property indicates "
  139. "whether or not events will be written to the event log when warnings are "
  140. "exceeded.")
  141. ]
  142. boolean WarningExceededNotification;
  143. };
  144. [Dynamic, Provider ("DskQuotaProvider"),
  145. Description ("The Win32_VolumeQuotaSetting class associates the disk quota "
  146. "setting with a specific disk volume."),
  147. Locale(0x409), UUID("FA452BCE-5B4F-4A56-BF52-7C4533984706")]
  148. class Win32_VolumeQuotaSetting : CIM_ElementSetting
  149. {
  150. [read, key, Override ("Element"), Description ("The DiskVolume for the "
  151. "associated disk quota setting.")
  152. ]
  153. Win32_LogicalDisk REF Element;
  154. [read, key, Override ("Setting"), Description ("The QuotaSetting associated "
  155. "with the referenced LogicalDisk.")
  156. ]
  157. Win32_QuotaSetting REF Setting;
  158. };