【问题标题】:Vb.net - Display each network adapter, enabled or disabledVb.net - 显示每个网络适配器,启用或禁用
【发布时间】:2011-01-29 20:35:00
【问题描述】:

我正在尝试在运行此应用程序的计算机上显示网络适配器。 为此,我希望能够显示所有网络适配器,无论它们处于何种状态。 然后我希望能够通过按下按钮来启用和禁用适配器。

我尝试过使用System.Net.NetworkInformation,但它似乎只包含处于活动状态的那个。

' NETWORK ADAPTERS

' Create label
Dim LabelNetworkAdapter As New Label
Dim old As Padding = LabelNetworkAdapter.Margin
LabelNetworkAdapter.Margin = New Padding(old.Left, 8, old.Right, old.Bottom)

' CreateButton
Dim BtnConnectButton As New Button
BtnConnectButton.Height = 23
BtnConnectButton.Width = 60

For Each nic As NetworkInterface In NetworkInterface.GetAllNetworkInterfaces()

    Dim strText As String = nic.Description.ToString
    TableLayoutPanel_Nettverkskort.Controls.Add(LabelNetworkAdapter)
    LabelNetworkAdapter.Text = strText

    TableLayoutPanel_Nettverkskort.Controls.Add(BtnConnectButton)
    BtnConnectButton.Text = "Koble fra"

    Exit For

Next

【问题讨论】:

  • 这就是禁用界面的意思,应用程序再也看不到它了。使用 WMI Code Creator 来处理 WMI 查询。

标签: vb.net network-programming wmi


【解决方案1】:

您尝试做的事情是不可能的。当您禁用网络接口时,操作系统会将其隐藏在应用程序中。这是有道理的,因为您实际上无法使用它。您将看到它的唯一方法是在 shell 的“我的网上邻居”文件夹中(或他们现在决定调用的任何名称)。

This bug report 在 MSDN 上似乎恰当地描述了您的问题。它被“按设计”关闭。

documentation 甚至说明返回值为:

一个 NetworkInterface 数组,其中包含描述可用网络接口的对象,如果未检测到接口,则为空数组。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-05
    • 2013-10-06
    • 1970-01-01
    相关资源
    最近更新 更多