试试在 GetMessage 之前,先调用一个空的 PeekMessageW(&msg, NULL, WM_USER, WM_USER, PM_NOREMOVE);
解决方案 »
- 请问OllyDbg1.1如何拦截Notepad的关于对话框??
- 向各位高手请教:Socket实现Http协议Post请求,通过构造Soap包方式访问WebService?
- 大家探讨一下,在编写C或C++的程序中,哪些变量在使用后需要程序员自己释放?
- dilog
- 用过EPSON OLE POS或其他OPOS的近来一下啊:怎么定制啊?
- 真的没有办法了吗?把CONSOLE程序的输出导入到文件中,用程序控制.
- 在多文档程序中,向导已经实现了保存文档的方法,但是我想点击系统保存按纽时保存所有文档到一个文件中。
- 急!!!工具箱里的各种工具控件都变灰,不可用了!!!!!!!!!!
- 一道题!
- 为什么告诉我连接错误??
- 请教高手 ,关于MFC AlphaBlend透明的问题,十万火急,本人刚接触GDI,菜鸟一个,求前辈指点
- 请问一个mfc字符串查找问题
if (WAIT_TIMEOUT == dwRet)INFINITE 改10000 看看
{
MSG msg;
BOOL bExitThread = FALSE;
while(GetMessage(&msg, NULL, 0, 0))
{
switch(msg.message)
{
case WM_THREAD_START_TIMER:
{ }
break; case WM_TIMER:
{ }
break;
}
TranslateMessage(&msg);
DispatchMessage(&msg);
} printf("endHeartBeatProc exit \n");
return TRUE;
}
int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
m_hHeartBeatThread = CreateThread(NULL,0,SendHeartBeatProc, NULL, 0,&m_dwHeartBeatThreadID); if (m_hHeartBeatThread)
{
if (m_dwHeartBeatThreadID)
{
BOOL bRet = FALSE;
while (!bRet )
{
printf("Post Message.\r\n");
bRet = PostThreadMessage(m_dwHeartBeatThreadID, WM_QUIT, 0, 0);
}
printf("Post Success.\r\n");
} DWORD dwRet = WaitForSingleObject(m_hHeartBeatThread, INFINITE);
if (WAIT_TIMEOUT == dwRet)
{
::TerminateThread(m_hHeartBeatThread,0);
}
}
return 0;
}
你说的可能有这可能,win32下是没问题的。就是在wince下,我再研究下吧
{
printf("Post Message.\r\n");
bRet = PostThreadMessage(m_dwHeartBeatThreadID, WM_QUIT, 0, 0);
}
//
还是这样 牢靠:
PostThreadMessage 不能保证 消息 被 执行。 while (!bRet )
{
printf("Post Message.\r\n");
bRet = PostThreadMessage(m_dwHeartBeatThreadID, WM_QUIT, 0, 0);
Sleep(0);
}