c – 捕获网络状态更改事件

我想在丢失后重新建立互联网连接时获取事件.它是我正在开发的数据传输软件.如果我在数据传输过程中丢失了网络,我希望在它恢复时收到通知,并自动继续传输.

我当然可以创建一个单独的线程并使用计时器检查网络,但也许有更好的选择.

我主要在Windows(不是.net)开发Windows.

我也可以使用wxwidgets(我将它用于GUI),但我怀疑它提供了任何相关的功能.

您可能想要查看系统事件通知服务器(SENS)API http://msdn.microsoft.com/en-us/library/cc185680(VS.85).aspx

我实际上并没有使用它,但似乎它提供了你想要的事件.

编辑:

WMI似乎拥有您需要的有关各种网络连接和状态更改的所有信息.它还有一个异步事件模型,可用于获取通知.我想,诀窍是生成适当的WMI查询以获取您想要的信息.这个blog看起来像是正确的查询类型,这个MSDN解释了如何异步处理事件.

https://stackoverflow.com/questions/2101041/capturing-network-status-change-event

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:c – 捕获网络状态更改事件