【发布时间】:2019-09-23 16:39:45
【问题描述】:
我有以下代码和查询来获取来自 Wlan 连接的发送/接收字节。我想获取每个属性项目的值,但我在尝试这样的时候得到Generic failure:
a = WMIvalues.Item(1).Properties_.Item(1).Value
正确的做法是什么?
Sub Test()
Dim WMIvalues As Object
Dim sWQL As String
sWQL = "Select BytesReceivedPersec,BytesSentPersec,BytesTotalPersec from Win32_PerfRawData_Tcpip_NetworkInterface"
Set WMIvalues = GetObject("winmgmts:root/CIMV2").ExecQuery(sWQL)
a = WMIvalues.Item(1).Properties_.Item(1).Value
End Sub
【问题讨论】:
-
尝试一步一步地为值的链式调用的每个位置分配一个变量。这应该为您指明正确的方向。
-
查询是异步的吗?您是否尝试在对象设置之前访问它?
-
另外,
_(下划线)在 VBA 中有点问题,因为它也用于编写属于接口的方法。或者用于 VBE 中的换行。 -
据我猜测,您将不得不使用“Microsoft WMI Scripting V1.2 Library”
-
由于您的代码使用后期绑定,因此无需添加引用。