使用WMI确定哪些适配器连接到Internet

时间:2010-07-19 16:02:22

标签: vbscript network-programming wmi

我正在编写一个VB脚本,它使用WMI来确定哪个适配器用于互联网连接?例如 - 如果我有LAN和3G板,它需要告诉用户哪个连接。我知道一台机器可能有> 1个互联网连接,但是现在,让我们假设1。

编辑: 好的,我怎么能用任何命令工具做到这一点?鉴于咆哮的沉默,我想这是不可能使用WMI。 :-)会跟踪打印工作吗?我对跟踪不太熟悉。

提前感谢您的帮助! 富

1 个答案:

答案 0 :(得分:3)

使用 Win32_NetworkAdapterConfiguration 查找 IPConnectionMetric 最低的网络设备,这将是第一个用于访问互联网的设备。

strComputer = "."
Set objWMIService = GetObject(_
    "winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * From Win32_NetworkAdapterConfiguration")

metric = 500
description = ""

For Each objItem in colItems
    If (objItem.IPConnectionMetric < metric AND objItem.IPConnectionMetric >= 0) then
        metric = objItem.IPConnectionMetric
        description = objItem.Description
    End If
Next

Set WshShell = CreateObject("WScript.Shell")
WshShell.Popup(description)

可以在MSDN

上找到用于访问WMI的VBScript示例