在一个消息循环里面调用了
GetMessage( &msg, NULL, 0, 0 );
这个函数,贪图方便,连msdn也没有看,就从别人的代码里面考了过了
原来的代码这样
for(j=0;j<MAX_MSG_TRANS;J++) {
因为刚开始用了Timer,防止不断调用Timer的消息>if( (bRet = GetMessage( &msg, NULL, 0, 0 )) != 0)
.......
else
return;
在XP下面不用附加什么消息,好像很容易就返回了
今天在公司的2000下面用,竟然,一定要不断的给消息,比如鼠标移动等,才能return 出来。查一下msdn,GetMessage是bool类型,难道是if判断的问题。
2000和xp有这样的细微差别吗?还是测试的环境有什么不一样的地方。
当然if(GetMessage)这个地方是一定要改的,看来也不能太相信别人的代码了。
GetMessage( &msg, NULL, 0, 0 );
这个函数,贪图方便,连msdn也没有看,就从别人的代码里面考了过了
原来的代码这样
for(j=0;j<MAX_MSG_TRANS;J++) {
因为刚开始用了Timer,防止不断调用Timer的消息>if( (bRet = GetMessage( &msg, NULL, 0, 0 )) != 0)
.......
else
return;
在XP下面不用附加什么消息,好像很容易就返回了
今天在公司的2000下面用,竟然,一定要不断的给消息,比如鼠标移动等,才能return 出来。查一下msdn,GetMessage是bool类型,难道是if判断的问题。
2000和xp有这样的细微差别吗?还是测试的环境有什么不一样的地方。
当然if(GetMessage)这个地方是一定要改的,看来也不能太相信别人的代码了。