MFC程序,我在一个View的代码中创建了一个线程(这个线程,每隔5秒钟向View窗口
发送一个WM_COMMAND消息
具体情况,请看我的代码线程函数
注:hView是创建这个线程的View的m_hWnd,定义为全局变量
bAutomation和sec也都是全局变量
static DWORD WINAPI DoTimer(LPVOID lpParameter)
{
while(bAutomation)//bAutomation是BOOL变量
{
Sleep(sec*1000);//sec是int变量
if(bAutomation)
{
TRACE("Timer Working\n");
SendMessage(hView,WM_COMMAND,ID_GET,0);//注意这里,见消息映射
}
}
return 0;
}View中的消息映射
ON_COMMAND(ID_GET,GetList)
我希望DoTimer线程能引发上面的消息
现在的问题是:我的程序能工作,但是执行到SendMessage处在输出窗口会看到警告,并且也没有程序DoTimer也不能触发消息:
Warning: no message line prompt for ID 0x8008.//这是一开始运行线程时的
Timer Working//这是TRACE宏的输出
Warning: not executing disabled command 32772//这是SendMessage的警告
发送一个WM_COMMAND消息
具体情况,请看我的代码线程函数
注:hView是创建这个线程的View的m_hWnd,定义为全局变量
bAutomation和sec也都是全局变量
static DWORD WINAPI DoTimer(LPVOID lpParameter)
{
while(bAutomation)//bAutomation是BOOL变量
{
Sleep(sec*1000);//sec是int变量
if(bAutomation)
{
TRACE("Timer Working\n");
SendMessage(hView,WM_COMMAND,ID_GET,0);//注意这里,见消息映射
}
}
return 0;
}View中的消息映射
ON_COMMAND(ID_GET,GetList)
我希望DoTimer线程能引发上面的消息
现在的问题是:我的程序能工作,但是执行到SendMessage处在输出窗口会看到警告,并且也没有程序DoTimer也不能触发消息:
Warning: no message line prompt for ID 0x8008.//这是一开始运行线程时的
Timer Working//这是TRACE宏的输出
Warning: not executing disabled command 32772//这是SendMessage的警告
解决方案 »
- 我在写一个游戏服务端,游戏用TCP连接通信,是不是每个连接都分配一个线程去管理呢?
- VC++和JAVA选择哪个更好??
- CCListCtrl过滤
- VC 2005 下使用Unicode字符编码时,格式化字符串的问题
- 再次请教一个关于类模板的友元函数问题,代码很短..............
- 请教各位WM_USER的定义是多少?顺便祝大家圣诞快乐。
- vc下哪个控件可以实现类似excel表格一样的形式啊???
- m_pwd = new CDialog,此时m_pwd都有值了,为什么m_pwd->m_hWnd为空???在线!
- 面试遇到一个问题,不知道怎么回答好!!!!
- 怎么消除这个警告呢??(《c++编程思想》里的一个例子)
- INTERNAL COMPILER ERROR是个什末错误?
- 帮我一下~谢谢!(非常简单)
意思是没有找到消息行提示。可以编辑菜单项的属性以添加消息行提示,或者简单的忽略这个警告。Warning: not executing disabled command 32772
意思是命令32772被停用了。你可以检查是不是有ON_UPDATE_COMMAND_UI宏在停用这个命令。