【发布时间】:2019-05-30 04:40:19
【问题描述】:
我的 VS2015 VB 应用程序正在读取用户计算机的 MAC 地址。除了一些用户使用带有分配自己 MAC 地址的扩展坞的笔记本电脑外,这种方法效果很好。我正在使用的代码返回它找到的第一个,可以搜索特定的吗?
Dim mc As New ManagementClass(New ManagementPath("Win32_Processor"), New ObjectGetOptions(New ManagementNamedValueCollection()))
Dim moc As ManagementObjectCollection = mc.GetInstances()
mc.Path = New ManagementPath("Win32_NetworkAdapterConfiguration")
moc = mc.GetInstances()
Dim sMac As String = String.Empty
For Each mo As ManagementObject In moc
If (mo.GetPropertyValue("IPEnabled") = True) Then
If (sMac = String.Empty) Then
sMac = mo.GetPropertyValue("MacAddress").ToString()
End If
End If
Next
【问题讨论】:
-
您是否尝试输出 ServiceName 以确定笔记本电脑和扩展坞 (
mo.GetPropertyValue("ServiceName")) 之间的差异? -
我尝试捕获相关服务,在不了解每个设备的情况下无法确定笔记本电脑和扩展坞之间的区别。
标签: vb.net wmi mac-address