axMSComm1.Output”引发了“System.Runtime.InteropServices.COMException”类型的异常

hy_4209 2010-12-12 02:56:19
axMSComm1.Output”引发了“System.Runtime.InteropServices.COMException”类型的异常


使用axMSComm1控件接受或发送数据时,出现异常 ,但是不报错,接受数据后 接着axMSComm1.Output输出指令,但是接受方没反应,求解释



private void axMSComm1_OnComm(object sender, EventArgs e)
{
axMSComm1.InputMode = MSCommLib.InputModeConstants.comInputModeText; //以文本形式接收数据
axMSComm1.RThreshold = 1; //设置为接收缓冲区每接收一个字符将引发一次OnComm事件
axMSComm1.InputLen = 0;//清除接收缓冲区
axMSComm1.DTREnable = true; //置DTR有效
axMSComm1.RTSEnable = true; //置RTS有效

string data = axMSComm1.Input.ToString();


OnchangedText1(data);
}


public void GetComm()
{

// AxMSCommLib.AxMSComm com; //定义MSComm控件变量

axMSComm1.CommPort = 1; //设定串口号

if (axMSComm1.PortOpen==true)
{
axMSComm1.PortOpen = false; //若该端口已经打开,则关闭该端口
}

axMSComm1.PortOpen = true;

axMSComm1.RThreshold = 1; //当接收到数据时就触发OnComm事件
//设置参数:数据传输速率为9600bit/s,没有奇偶校验,数据位是8位,停止位是1位
axMSComm1.Settings = "9600,n,8,1";
axMSComm1.Handshaking = MSCommLib.HandshakeConstants.comNone; //没有使用握手协议
axMSComm1.InputMode = MSCommLib.InputModeConstants.comInputModeText;//文本形式取回
axMSComm1.InputLen = 0; //当设置为零时,在Input可用时读取所有的数据
// axMSComm1.OnComm += new System.EventHandler(this.OnComm); //OnComm事件发生,加入列表

}

private void Form1_Load(object sender, EventArgs e)
{
GetComm();
}

private void button1_Click(object sender, EventArgs e)
{
axMSComm1.Output = "-";
}
...全文
117 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

16,553

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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