oWMI = Getobject("WINMGMTS:\\.\ROOT\Microsoft\Windows\Storage")This works fine:
oWMI = Getobject("WINMGMTS:\\.\ROOT\Cimv2")However, all of these fail:
win = oWMI.instancesof("MSFT_PhysicalDisk") ? win.Count && OLE error: invalid class win = oWMI.InstancesOf("MSFT_PhysicalDisk", 1) && OLE error: invalid class win = oWMI.instancesof("MSFT_VirtualDisk") ? win.Count && same error win = oWMI.instancesof("MSFT_Disk") ? win.Count && same errorWhat could I try next?
>*adapted from http://wutils.com/wmi/root/microsoft/windows/storage/msft_physicaldisk/vbscript-samples.html >*can try other properties of MSFT_PhysicalDisk class > >Create Cursor ycurs (allocateSize c(20),mediaType c(2), FriendlyName c(20),PhysicalLocation c(20),Size c(20),healthStatus c(2) ) > >Local oWMI, Instances, Instance >*Get base WMI object, "." means computer name (local) >oWMI = Getobject("WINMGMTS:\\.\ROOT\Microsoft\Windows\Storage") >*Get instances of MSFT_PhysicalDisk - all instances of this class and derived classes >Instances = oWMI.InstancesOf("MSFT_PhysicalDisk") >*Get instances of MSFT_PhysicalDisk >Instances = oWMI.InstancesOf("MSFT_PhysicalDisk", 1) > >*Enumerate instances >For Each Instance In Instances > *Do something with the instance > Insert Into ycurs Values (; > trans(Instance.AllocatedSize),; > trans(Instance.mediaType),; > Instance.FriendlyName,; > Instance.PhysicalLocation,; > trans(Instance.Size),; > trans(Instance.healthStatus); > ) > >Next &&Instance >Brow > >*!* MediaType >*!* Data type: UInt16 >*!* Access type: Read-only >*!* The media type of the physical disk. >*!* Value Meaning >*!* 0 Unspecified >*!* 3 HDD >*!* 4 SSD >*!* 5 SCM >>