读书人

NotifyRouteChange会监听网络通断吗

发布时间: 2013-01-02 13:08:44 作者: rapoo

NotifyRouteChange能监听网络通断吗?
NotifyRouteChange
路由变化通知,网上说,网络通断时,路由表会发生变化,将会有通知发生.这种说法对吗?
基于这种说法,我建立了一个监测网络通断的线程,没有达到预期的效果:


//主线程
{
HANDLE handle = ::CreateThread(0, 0, WaitForEvent, (LPVOID)m_hWnd, 0, 0);
::CloseHandle(handle);
}
//监听线程
DWORD WINAPI WaitForEvent(LPVOID lpParam)
{
HANDLE handle = WSACreateEvent();
OVERLAPPED overlap;
overlap.hEvent = handle;
while (1)
{
HANDLE h2;
::NotifyRouteChange(&h2, &overlap);
if (WaitForSingleObject(h2, INFINITE) == WAIT_OBJECT_0)
{
::SendMessage((HWND)lpParam, WM_NETWORKCHANGED, 0, 0);
}
}
return 0;
}

结果不管网络通断与否,都没有收到自定义消息:WM_NETWORKCHANGED
[解决办法]
http://social.msdn.microsoft.com/Forums/zh-CN/visualcpluszhchs/thread/1ef5f70c-e9b6-4e29-9c47-b7ac52424094

读书人网 >VC/MFC

热点推荐