WMI中相关的操作说明execquery 或者是instancesof

简介:

原文地址:http://include.wutils.com/wmi/ROOT%5Ccimv2/Win32_DiskQuota.html

Win32_DiskQuota - VB Script code samples

Get instance of WMI class using GetObject

Short VBS code - get a single specified instance of Win32_DiskQuota class or get a default unnamed instance (singleton) of the class, using one single command GetObject with exact path of the wmi object.

'http://wutils.com/wmi/
Dim wmiObject
Set wmiObject = GetObject( _
 "WINMGMTS:\\.\ROOT\cimv2:" + _
 "Win32_DiskQuota.QuotaVolume=""Path to Win32_LogicalDisk"",User=""Path to Win32_Account""")
Wscript.Echo wmiObject.DiskSpaceUsed 'or other property name, see table bellow

Alternative codes

SWbemServices.Get

Quickest and most efficient VB Script code to get a single instance by a key - SWbemServices.Get

'http://wutils.com/wmi/
Dim oWMI, Instance

'Get base WMI object, "." means computer name (local)
Set oWMI = GetObject("WINMGMTS:\\.\ROOT\cimv2")

Do
  'Get the instance of Win32_DiskQuota 
  Set Instance = oWMI.Get("Win32_DiskQuota.QuotaVolume=""Path to Win32_LogicalDisk"",User=""Path to Win32_Account""")
                    
  'Do something with the instance
  Wscript.Echo Instance.DiskSpaceUsed 'or other property name

  'Wait for some time to get next value
  Wscript.Sleep 1000
Loop While True  
  
WMI query - sample windows WQL

Get a specified instance of Win32_DiskQuota by key, get a default unnamed instance (singleton) of the class or list instances of the class by wmi query using this VB Script.

'http://wutils.com/wmi/
Dim oWMI, WQL, Instances, Instance

'Get base WMI object, "." means computer name (local)
Set oWMI = GetObject("WINMGMTS:\\.\ROOT\cimv2")

'Create a WMI query text 
WQL = "Select * from Win32_DiskQuota"

'Get instances of Win32_DiskQuota 
Set Instances = oWMI.ExecQuery(WQL)
                    
'Enumerate instances  
For Each Instance In Instances 
  'Do something with the instance
  Wscript.Echo Instance.DiskSpaceUsed 'or other property name
Next 'Instance
InstancesOf

List of all instances, wmi class Win32_DiskQuota.

'http://wutils.com/wmi/
Dim oWMI, Instances, Instance

'Get base WMI object, "." means computer name (local)
Set oWMI = GetObject("WINMGMTS:\\.\ROOT\cimv2")

'Get instances of Win32_DiskQuota 
Set Instances = oWMI.InstancesOf("Win32_DiskQuota")


'Enumerate instances  
For Each Instance In Instances 
  'Do something with the instance
  Wscript.Echo Instance.DiskSpaceUsed 'or other property name
Next 'Instance
WMI remote scripting - Locator, Connect

Get WMI management object using SWbemLocator.ConnectServer method. You can connect to a remote computer and specify Username/Password for the WMI connection.

'http://wutils.com/wmi/
Dim Locator, oWMI, WQL, Instances, Instance

'Create Locator object
Set Locator = CreateObject("WbemScripting.SWbemLocator")

'Get base WMI object
Set oWMI = Locator.ConnectServer("MachineName", "ROOT\cimv2", "MachineName\administrator", "Password")
 
'.... continue using oWMI object

Win32_DiskQuota properties

>>

Name
CIMType
IsArray
IsLocal
Origin
read
Units
write
key
ValueMap
Qualifiers

DiskSpaceUsed
21,uint64
NO
YES
Win32_DiskQuota
True
"Bytes"
-

Limit
21,uint64
NO
YES
Win32_DiskQuota
True
"Bytes"
True
-

key

QuotaVolume
102,ref:Win32_LogicalDisk
NO
YES
Win32_DiskQuota
True
True
-

Status
19,uint32
NO
YES
Win32_DiskQuota
True
Array["0","1","2"]
-

key

User
102,ref:Win32_Account
NO
YES
Win32_DiskQuota
True
True
-

WarningLimit
21,uint64
NO
YES
Win32_DiskQuota
True
"Bytes"
True
-

Win32_DiskQuota derivation

Win32_DiskQuota is top level class. See other top classes or no derived classes.

Sample of Instances (Win 2003 Server)

Number of instances: 9999, Key Names:QuotaVolume,User

Win32_DiskQuota Qualifiers

>>

Name
Value
ToInstance
ToSubclass
Overridable
Amended
Local

Association
True
YES
YES
NO
NO
YES

CreateBy
"PutInstance"
NO
NO
YES
NO
YES

DeleteBy
"DeleteInstance"
NO
NO
YES
NO
YES

dynamic
True
YES
NO
YES
NO
YES

Locale
&1033
YES
NO
YES
NO
YES

provider
"DskQuotaProvider"
YES
NO
YES
NO
YES

SupportsCreate
True
NO
NO
YES
NO
YES

SupportsDelete
True
NO
NO
YES
NO
YES

SupportsUpdate
True
NO
NO
YES
NO
YES

UUID
"B94560CA-41CC-4FB5-BD56-282329DA41DA"
YES
NO
YES
NO
YES

Win32_DiskQuota System properties

>>

Name
Value
Origin
CimType
Local
Array

__PATH
"\\TRIPLE\ROOT\cimv2:Win32_DiskQuota"
___SYSTEM
8
False
False

__NAMESPACE
"ROOT\cimv2"
___SYSTEM
8
False
False

__SERVER
"TRIPLE"
___SYSTEM
8
False
False

__DERIVATION
Array[]
___SYSTEM
8
False
True

__PROPERTY_COUNT
&6
___SYSTEM
3
False
False

__RELPATH
"Win32_DiskQuota"
___SYSTEM
8
False
False

__DYNASTY
"Win32_DiskQuota"
___SYSTEM
8
False
False

__SUPERCLASS
___SYSTEM
8
False
False

__CLASS
"Win32_DiskQuota"
___SYSTEM
8
False
False

__GENUS
&1
___SYSTEM
3
False
False

http://include.wutils.com/wmi/ - WMI reference for windows server. Quick VBScript and c# code samples.


本文转自hcy's workbench博客园博客,原文链接:http://www.cnblogs.com/alterhu/archive/2012/04/09/2439064.html,如需转载请自行联系原作者。

目录
相关文章
|
7月前
|
安全 数据安全/隐私保护 Windows
Windows 命令提示符(CDM)操作(六):安全和权限
Windows 命令提示符(CDM)操作(六):安全和权限
|
安全 Shell Windows
WMI使用学习笔记(下)
WMI使用学习笔记
198 0
|
网络协议 数据安全/隐私保护 Windows
WMI使用学习笔记(上)
WMI使用学习笔记
176 0
|
存储 网络协议 API
WMI介绍和实例使用
Windows Management Instrumentation 大多会被翻译为“Windows管理规范”,Instrumentation 含义为仪器仪表、器乐谱写等......
414 0
WMI介绍和实例使用
WMI 异常问题,重置WMI
分享一个WMI 异常问题,重置WMI的案例
WMI 异常问题,重置WMI
|
Windows 开发工具 C#