代码如下
void CTimerDlg::OnButton1()
{
Serial=10;
::CreateThread(NULL,0,SendProc,&Serial,0,NULL);
}
DWORD WINAPI SendProc(LPVOID lpParameter)
{
int i=*((int *)lpParameter);
::SetTimer(NULL,i,1000,(void(CALLBACK*)(HWND,UINT,UINT,DWORD))TimerProc);
return 0;
}VOID CALLBACK TimerProc(HWND hwnd,UINT uMsg,UINT_PTR idEvent,DWORD dwTime)
{
CString str("haha");
AfxMessageBox(str);
}
点击按钮创建线程后,进入SendProc,但是TimerProc不起作用,调试时也没有进入函数体内,SendProc与TimerProc都是全局函数,望各位大侠帮忙!
void CTimerDlg::OnButton1()
{
Serial=10;
::CreateThread(NULL,0,SendProc,&Serial,0,NULL);
}
DWORD WINAPI SendProc(LPVOID lpParameter)
{
int i=*((int *)lpParameter);
::SetTimer(NULL,i,1000,(void(CALLBACK*)(HWND,UINT,UINT,DWORD))TimerProc);
return 0;
}VOID CALLBACK TimerProc(HWND hwnd,UINT uMsg,UINT_PTR idEvent,DWORD dwTime)
{
CString str("haha");
AfxMessageBox(str);
}
点击按钮创建线程后,进入SendProc,但是TimerProc不起作用,调试时也没有进入函数体内,SendProc与TimerProc都是全局函数,望各位大侠帮忙!
解决方案 »
- extern videodlg* pDlg;//如何使用,报;未定义错误找不到类型
- 利用DeviceIoControl()向U盘写数据问题
- VC如何实现在右下角浮出小框框
- 紧急求救----Sybase 11.5客户端安装错误,在线等!!
- 什么是thread safe(线程安全)别笑
- Delphi调用VC写的Dll的画图问题
- delete问题!!!
- 当调用ListView_SetCheckState宏时,报未定义,已包含commctrl.h。为什么?
- 那位高人知道如何改变CInetrnetFile::OpenURL()函数的响应时间(Timeout)??
- 如何在一个窗体上获取鼠标按下时鼠标的坐标
- 回调slider消息响应
- Runtime error! 高手进!!
==========
定时器总是和窗口相关的,上面的HWND是什么啊?
可以用 UI 线程做。
{
int i=*((int *)lpParameter);
::SetTimer(NULL,i,1000,(void(CALLBACK*)(HWND,UINT,UINT,DWORD))TimerProc);
MSG msg;
while (GetMessage(&msg, 0, 0, 0))
DispatchMessage(&msg);return 0;
}