我正在制作一个程序,为服务器发送“心跳”以跟踪节点。它们是具有以下有效负载的数据包:
'启动时'启动时
每5秒'跑'
在关机时'停止'
前两个很容易。线程/循环可以在第一次和后续运行时设置消息。如何使循环“捕获”关闭以便它可以发送最后一个数据包?
我在WinXP平台上使用minGW编译器。
编辑:我添加了我错过的相关细节(感谢walkingTarget和Ferruccio)
答案 0 :(得分:1)
在WindowProc()中,您可以检查消息WM_QueryEndSession,Windows在关闭之前将其发送给所有打开的进程。有关该消息的更多信息,请参阅以下链接,但我知道它与检查WM_SIZE一样简单:
http://msdn.microsoft.com/en-us/library/aa376890%28VS.85%29.aspx