使用MSCOMM控件,若出现异常应该catch哪种异常?

eaglexp 2004-05-02 06:50:43
try
{
m_Comm.SetPortOpen(TRUE);//打开串口

t.Format("%d,n,8,2",baud);
m_Comm.SetSettings(t);
m_Comm.SetRThreshold(1);
}
catch()
{
t.Format(_T("串口Com%d打开失败!"),port);
AfxMessageBox(t);
}
catch()里怎么写?
谢谢。
...全文
72 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
LuWei103 2004-05-06
  • 打赏
  • 举报
回复
我看了不少这个初始化的远码好象基本上没有异常破获的。 如上
LuWei103 2004-05-06
  • 打赏
  • 举报
回复
m_MSComm.Create(NULL,style,CRect(0,0,0,0),this,IDC_MSCOMM1);
if(m_MSComm.GetPortOpen()) //如果串口是打开的,则行关闭串口
{
m_MSComm.SetPortOpen(FALSE);
}

m_MSComm.SetCommPort(1); //选择COM1
m_MSComm.SetInBufferSize(1024); //接收缓冲区
m_MSComm.SetOutBufferSize(1024);//发送缓冲区
m_MSComm.SetInputLen(0);//设置当前接收区数据长度为0,表示全部读取
m_MSComm.SetInputMode(1);//以二进制方式读写数据
m_MSComm.SetRThreshold(1);//接收缓冲区有1个及1个以上字符时,将引发接收数据的OnComm事件
m_MSComm.SetSettings("9600,n,8,1");//波特率9600无检验位,8个数据位,1个停止位

if(!m_MSComm.GetPortOpen())//如果串口没有打开则打开
m_MSComm.SetPortOpen(TRUE);//打开串口
else
m_MSComm.SetOutBufferCount(0);

lwglucky 2004-05-05
  • 打赏
  • 举报
回复
comerr
xiaoyaozi_2 2004-05-04
  • 打赏
  • 举报
回复
如果实在不知道catch哪种异常,可以写成catch(...),可以捕获所有异常,至少保证程序不会异常退出。

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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