线程问题!在此先谢了!

上海老李 2002-10-23 09:37:58
我用BCB做一个串口相关的ACTIVEX控件,由于要实时监视串口返回的数据,所以用了线程:
if (TopComma->hcom==0)
{
return;
}
ClearCommError(TopComma->hcom,&dwError,&cs); //如果出错所调用的
if (cs.cbInQue>sizeof(inbuff))//如果缓冲区的内容多于所定义接收缓冲区的大小则清空
{
PurgeComm(TopComma->hcom,PURGE_RXCLEAR);
return;
}
ReadFile(TopComma->hcom,inbuff,cs.cbInQue,&nBytesRead,NULL); //读数据
inbuff[cs.cbInQue]='\0';
aline=inbuff;
if (aline!="")
{
if (aline=="Ul") {aline="开始";} //往FORM1中的LISTBOX中加数据
else
if (aline!="l") aline="a coin";
TopComma->ListBox1->Items->Add(aline);
}

//temp=AnsiString("108");//继续发命令StrToInt(temp)
out=0x6C;
ch=(char)out;
WriteFile(TopComma->hcom,&ch,sizeof(char),&lrc,NULL);
} while(!Terminated);
TopComma是控件窗体(ActiveForm),我要把当前得到的数据返回TopComma,hcom是串口的句柄!做编译时出现所有的TopComma不通过!
E2015 Ambiguity between 'TopComma' and 'Topcommp_tlb::TopComma'
应该怎么解决,谢了!
...全文
19 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
上海老李 2002-10-24
  • 打赏
  • 举报
回复
按空心菜所说的都不行!快救命!改成MyTopComma还是那样,前面加了它就不能认识!
favorit 2002-10-24
  • 打赏
  • 举报
回复
应该是Form1->ListBox1->Items->Add(aline);吧
invalid 2002-10-23
  • 打赏
  • 举报
回复
编译器不能分辨TopComma是定义'TopComma' and 'Topcommp_tlb::TopComma'
建议你把TopComma改一下成MyTopComma。
如果不行就在它前面加'Topcommp_tlb::成'Topcommp_tlb::TopComma
上海老李 2002-10-23
  • 打赏
  • 举报
回复
帮帮忙!

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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