100分求助:为什么我的程序停不下来----关于串口通讯

jiju 2002-03-09 08:40:46
我打开一个COM口,WRITEFILE正常,但是,读文件时。。。
我启动一个线程来读COM口收到的字符,
创建COM口如下
m_hCom1 = CreateFile("COM1",GENERIC_READ | GENERIC_WRITE ,
0, NULL, OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL|FILE_FLAG_OVERLAPPED , NULL);

并设有事件HANDLE g_Event[3]均已指向创建好的OVERLAPPED 结构的事件
有SetCommMask(m_hCom, EV_RXCHAR);

现在我把如下语句嵌套在CMyThread的RUN函数的循环里
DWORD SE = WaitForMultipleObjects(3,g_Event,false,)
case se of
0 :
COMSTAT ComStat;
DWORD dwErrorFlags;
ClearCommError(m_hCom,&dwErrorFlags,&ComStat);:
writefile(m_hCom1,...);
。。。
但是,程序却在waitForMultipliObjects语句上不停;se 的值一直是一个很大的数,并且不会变,
更怪的是用WaitForSingleObject()会永远停下来,就是不能接受信号
程序作在一个.dll里
望各位高手给予指点:万分感谢
...全文
33 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

1,649

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 非技术类
社区管理员
  • 非技术类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧