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.

转载于:https://www.cnblogs.com/alterhu/archive/2012/04/09/2439064.html

最新回复(0)
/jishujE2cZf2oMqiebNMiaE_2ByKPeoNd_2Fut_2FT17BUyiw_3D_3D8