You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Basic获取网卡速度时ManagementObjectSearcher未定义问题求助

解决Visual Studio 2019中ManagementObjectSearcher/ManagementObject未定义的问题

这些类型确实属于System.Management命名空间,但仅添加Imports System.Management导入语句还不够——VB项目默认不会自动引用对应的程序集,这是导致编译错误的核心原因。

解决步骤(针对Visual Studio 2019)

  • 右键解决方案资源管理器中的项目,选择「添加」→「引用」
  • 在弹出的「引用管理器」窗口中,切换到「程序集」→「框架」标签页
  • 找到并勾选System.Management选项,点击「确定」完成引用添加

添加引用后,你的代码就能正常识别ManagementObjectSearcher和ManagementObject类型,编译即可通过。

额外优化建议

Win32_NetworkAdapter的Speed字段可能返回空值(比如部分虚拟网卡、未启用的网卡),建议添加判空逻辑避免运行时错误:

Sub Main()
    Try
        Dim searcher As New ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapter WHERE NetEnabled = True")
        For Each adapter As ManagementObject In searcher.Get()
            Dim adapterName As String = adapter("Name").ToString()
            Console.WriteLine("Adapter: " & adapterName)
            
            If adapter("Speed") IsNot Nothing Then
                Dim adapterSpeed As ULong = CType(adapter("Speed"), ULong)
                Dim speedMbps As Double = adapterSpeed / 1000000
                Console.WriteLine("Speed: " & speedMbps & " Mbps")
            Else
                Console.WriteLine("Speed: 未知")
            End If
            Console.WriteLine("------------------------------")
        Next
    Catch ex As Exception
        Console.WriteLine("Error: " & ex.Message)
    End Try
End Sub

内容的提问来源于stack exchange,提问作者Frank Kosterman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 00:10:55