朝夕拾 2016-02-20 08:04 采纳率: 0%
浏览 1653

换了一台电脑就崩溃了

我的一个MFC的vs2010工程,能够实现串口通信。之前,在笔记本A上实验,串口是可以打开的,会显示“端口xxx设置成功”。但是当我把这个工程的文件夹原封不动的拷贝到笔记本B时,连接串口时就会报错。我的部分代码如下:
//else if(pMain->m_I2CDlgBar1.m_InterfaceType == 0)//选择串口通信
//{
CEdit pEdit;
CString Band_rate;
CString portStr,portstrtemp;
short portint;
static BOOL frist;
PortNewNum=pMain->m_I2CDlgBar1.m_port_num.GetCurSel()+1;//索引为0指的是COM1
pEdit=(CEdit
)(pMain->m_I2CDlgBar1.GetDlgItem(IDC_COMBO_BAND_RATE));
pEdit->GetWindowText(Band_rate);
m_strSeting= Band_rate+",n,8,1";//不懂
if(!COMOPEND)//COMOPEND是一个BOOL型的成员变量,初始值为FALSE.
{
DWORD style=WS_VISIBLE|WS_CHILD;
if (!m_comm.Create(NULL,style,CRect(0,0,0,0),this,ID_COMM))//create a Active Control,找不到ID_COMM对应的控件啊!!
{
COMOPEND=FALSE;
AfxMessageBox("Failed to create MSComm");
}
COMOPEND=TRUE;
m_comm.SetCommPort(PortNewNum);//设置端口号
m_comm.SetInBufferSize(4096*2);

m_comm.SetOutBufferSize(512);

if (!m_comm.GetPortOpen())//如果端口没打开,则打开
{
m_comm.SetPortOpen(TRUE);//打开
portint=m_comm.GetCommPort();
portStr.Format(_T("%d"),portint);
portstrtemp="端口"+portStr+"设置成功";
frist=TRUE;
MessageBox(portstrtemp);
}
但我单步运行调试运行“m_comm.SetCommPort(PortNewNum);”这一句时,程序就会崩溃。弹出下面这个框:
图片说明
图中显示,我的错误好像与f盘的一个叫dd的文件夹有关。但是我的两个笔记本A和B中的f盘里都没有这样一个文件夹啊,我觉得好奇怪,一时不知道改如何去差错,大神们快帮帮我吧,本人c++小白。。

  • 写回答

2条回答

  • lyhoo163 2016-02-20 22:39
    关注

    这应该是笔记本的串口驱动与你的代码不匹配造成的,试着找驱动安装吧!

    评论

报告相同问题?

悬赏问题

  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条