我可以做一个无休止的计时器检查IsInetOffline(),但我更喜欢一个钩子回调告诉我什么时候我插上/拔掉以太网网线或连接到无线互联网。 Windows API中有这样的东西吗?
答案 0 :(得分:2)
如果您使用的是.NET,则可以使用System.Net.NetworkInformation.NetworkChange.NetworkAvailabilityChanged事件。如果你需要在没有.NET的情况下使用Winsock API(如果你想了解更多信息的话,可以使用它),但它是一些令人讨厌的异步内容 - 不是一个很好用的“当网络状态发生变化时给我打电话”。
答案 1 :(得分:0)
可能有更好的方法,但IP帮助程序库中有一个NotifyAddrChange异步函数,它将在IPv4地址更改时创建通知。
答案 2 :(得分:0)
使用Win32 Shell Notifications完成(资源管理器会这样做)
你可以see here for code in C。