以下是打开串口的代码,调试就显示operation not valid while the port is opened,该如何解决?请大神指点void CCommTestDlg::OnBnClickedButtonOpen()
{
// TODO: 在此添加控件通知处理程序代码
if(m_mscomm.get_PortOpen())//如果串口是打开的,则行关闭串口
{
m_mscomm.put_PortOpen(FALSE);
}
m_mscomm.put_PortOpen(3);//选择COM3
m_mscomm.put_InBufferSize(1024);//接收缓冲区
m_mscomm.put_OutBufferSize(1024);//发送缓冲区
m_mscomm.put_InputLen(0);//设置当前接收数据长度为0,,表示全部读取
m_mscomm.put_InputMode(1);//以二进制方式读写数据
m_mscomm.put_RThreshold(1);//接收缓冲区有1 个及1个以上字符,将引发接收数据的OnComm事件
m_mscomm.put_Settings(_T("9600,n,8,1"));//波特率9600无检验位,8个数据位一个停止位
if(!m_mscomm.get_PortOpen()) 
{
m_mscomm.put_PortOpen(TRUE);//打开串口
AfxMessageBox(_T("串口3打开成功"));
}
else
{
m_mscomm.put_OutBufferCount(0);
AfxMessageBox(_T("串口3打开失败"));
}
}