代码之家  ›  专栏  ›  技术社区  ›  Alistair Evans

刷新内部Windows网络状态

  •  2
  • Alistair Evans  · 技术社区  · 15 年前

    我正在开发一个软件,它实际上需要与xp windows网桥另一侧的服务器套接字通信。现在,这可以正常工作,但是如果作为网桥一部分的某个连接发生故障(例如物理电缆被拔下),然后重新建立,网络连接查看器将不会更新显示。

    现在,这通常不是什么大问题,但是,在我右键单击网络连接并选择“刷新”上下文菜单项之前,不能通过网桥建立套接字连接。在此基础上,“Network Connections(网络连接)”窗口中的所有连接都表示连接牢固,我的软件可以在桥上建立一个套接字。

    我假设Windows软件网桥使用一些内部Windows网络状态来决定是否从各种连接路由数据包。

    所以,我的问题是,那个神奇的“刷新”按钮到底是做什么的?更具体地说,有没有一种方法可以让我的软件中的任何东西自动化?

    干杯

    3 回复  |  直到 15 年前
        1
  •  2
  •   Community CDub    8 年前

    也许你可以在找到直拨电话前做点什么? Repair Network Connection

    或者使用SysInternals工具查看手动执行时执行的dll/reg调用?这可能至少会引导你进入谷歌搜索。;-)

        2
  •  1
  •   Alistair Evans    15 年前

    我没有找到解决问题的直接方法,但我找到了以下形式的解决方法:

    有问题的PC有一个FireWire连接,因此有一个1394网络适配器(从未使用过)。我发现禁用和重新启用1394适配器(来自设备管理器)会导致所有状态都正确更新自己。

    但是,我并不想一直禁用和启用设备,因为每次执行该循环时,网络连接中的图标都会变灰,然后恢复正常。因此,相反,使用 DevCon tool, I executed a device restart ,这是安静的(在“网络连接”面板的适配器中没有可见的更改),并成功更新网络连接状态。

    事实证明,问题首先是由软件桥引起的,该桥为其他一切工作准备就绪。

    这不是一个理想的解决方案,但似乎确实能解决问题。

        3
  •  0
  •   K.Sandell    15 年前

    我知道的唯一开始找这个的地方是 MSDN -Windows Networking Functions . 我环顾四周,但没有发现任何具体的提到“刷新你”。