返回列表 发帖

[问题求助] [已解决]请教几个关于WMI的问题!

1、如上图中,我想提取【bytesrec...】下面数值最大的那一行应该怎么写?

2、如何显示【caption】中所有的字段?
3、哪里有较新的WMI教程啊?在网上找了一些,都不是很全,而且都是比较久的。

麻烦各位老大了!谢谢!

本帖最后由 pcl_test 于 2015-7-30 17:44 编辑

1、不知道具体类名,使用遍历排序输出最大值
2、
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set Disks = objWMIService.ExecQuery("Select * From Win32_DiskDrive")
For Each Item In Disks
    s = s & Item.Caption & vbCrLf
Next
Msgbox Trim(s)COPY

TOP

本帖最后由 437153 于 2015-7-31 09:29 编辑

回复 2# pcl_test

感谢老大帮忙!

    1、类名是:Win32_PerfRawData_Tcpip_NetworkInterface
   
    2、如果我想把内容赋值到变量应该怎么写?
作用是统计网卡的流量。

TOP

回复 3# 437153
1、
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set Items = objWMIService.ExecQuery("Select * from Win32_PerfRawData_Tcpip_NetworkInterface")
max = 0
For Each Item In Items
If CLng(Item.BytesReceivedPerSec) >= max Then
    max = CLng(Item.BytesReceivedPerSec)
End If
Next
Msgbox maxCOPY
2、s不是变量?要先补下基础知识呀

TOP

回复 4# pcl_test


    额,确实是才开始学习。
    终于的是我描述问题貌似也有问题
我想说的是:Caption 字段下面有多个值,我想赋值到各自的变量中去。
比如:
S1=GLOWAY.....
S2=TOSHIBA....

不好意思哈,劳烦你这么多次!

TOP

回复 5# 437153
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set Disks = objWMIService.ExecQuery("Select * From Win32_DiskDrive")
Dim arr()
i = 0
For Each Item In Disks
    ReDim Preserve arr(i)
    arr(i) = Item.Caption
    i = i + 1
Next
For j = 0 To UBound(arr)
    Msgbox arr(j)
NextCOPY

TOP

回复 6# pcl_test


    感谢您的帮助!学到了!

TOP

返回列表