日期:2014-05-18  浏览次数:20952 次

上位机修改时是报错0x800A1F52
在公司现有的上位机上做的修改,要实现产品的合格与否的自动判断功能(即根据成功通讯次数+失败通讯次数==100,如果失败次数>=5,就弹出对话框,提示产品不合格,否则,提示产品合格,通过),

我按照这个要求添加了两个函数 如
textBox9_TextChanged(object sender, System.EventArgs e),//成功次数文本框的
textBox10_TextChanged(object sender, System.EventArgs e) //失败次数文本框的
//-------------------------
private void textBox9_TextChanged(object sender, System.EventArgs e)
{

  try
  {
if(succ+err >= 100)
{
if(comm.PortOpen==true)
{
comm.PortOpen=false;
}
this.timer1.Enabled=false;
button3.Text="测试启动";
if(err>=5)
MessageBox.Show("该产品检测不合格","产品检测");
else 
MessageBox.Show("该产品检测合格","产品检测");

}

  }
  catch(Exception e3)
  {
MessageBox.Show("textBox9 报错了");
  }

}


private void timer2_Tick(object sender, System.EventArgs e) 是对统计成功次数succ,失败次数err,进行统计的

运行后,就出现如下报错



*************异常文本********************
System Runtime InteropServices.COMException(0x800A1F52):HRESULT中的异常: 0x800A1F52
  at MSCommLib.IMSComm.get_Input()
 at AxMscCommLib.AxMSComm.get_Input()
 at XXX.Form1.timer2_Tick(Object sender, EventArgs e)
 at System Windows.Forms.Timer.OnTick(EventArgs e)
 at System Windows.Forms.Timer.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr idEvent, IntPtr dwTime)

------解决方案--------------------
我是来学习的,
------解决方案--------------------
at XXX.Form1.timer2_Tick(Object sender, EventArgs e)

你看看这里面的代码有问题没
------解决方案--------------------
我也有这个困扰。新手