求助求助

问题描述

privatevoidserialPort_tem_DataReceived(objectsender,SerialDataReceivedEventArgse){buf=serialPort_tem.ReadExisting().ToString();this.Invoke(newEventHandler(DisplayText));//错误箭头指在这行}privatevoidDisplayText(objectsender,EventArgse){//stringdat=DateTime.Now.ToString();stringdat=DateTime.Now.ToLongTimeString().ToString();stringsubdata=buf.Substring(0,2);if(subdata=="1:"){data1=buf.Substring(2,6);textBox_tem1.Text=string.Format("{0}度",data1);doubletemp1=Convert.ToDouble(data1);if(temp1>50.0||temp1<-10.0){//PlaySound(@"e:/Music/login.wav",0,1);PlaySound(@"d:/qm.wav",0,1);try{connection.Open();//cmd.Connection=connection;stringsql=string.Format("insertintowarn1(time,temperature)values('{0}','{1}')",lable_time.Text,textBox_tem1.Text);SqlCommandcmd=newSqlCommand(sql,connection);intresult=cmd.ExecuteNonQuery();if(result<1){MessageBox.Show("error");}}catch(Exceptionex){MessageBox.Show("error");Console.WriteLine(ex.Message);}finally{connection.Close();}}this.chart1.Series[0].Points.AddXY(dat,temp1);}if(subdata=="2:"){data2=buf.Substring(2,6);textBox_tem2.Text=string.Format("{0}度",data2);doubletemp2=Convert.ToDouble(data2);if(temp2>50.0||temp2<-10.0){//PlaySound(@"e:/Music/login.wav",0,1);PlaySound(@"d:/qm.wav",0,1);try{connection.Open();//cmd.Connection=connection;stringsql2=string.Format("insertintowarn2(time,temperature)values('{0}','{1}')",lable_time.Text,textBox_tem2.Text);SqlCommandcmd2=newSqlCommand(sql2,connection);intresult2=cmd2.ExecuteNonQuery();if(result2<1){MessageBox.Show("error");}}catch(Exceptionex){MessageBox.Show("error");Console.WriteLine(ex.Message);}finally{connection.Close();}}this.chart2.Series[0].Points.AddXY(dat,temp2);}if(subdata=="3:"){data3=buf.Substring(2,6);textBox_tem3.Text=string.Format("{0}度",data3);doubletemp3=Convert.ToDouble(data3);if(temp3>50.0||temp3<-10.0){//PlaySound(@"e:/Music/login.wav",0,1);PlaySound(@"d:/qm.wav",0,1);try{connection.Open();//cmd.Connection=connection;stringsql3=string.Format("insertintowarn3(time,temperature)values('{0}','{1}')",lable_time.Text,textBox_tem3.Text);SqlCommandcmd3=newSqlCommand(sql3,connection);intresult3=cmd3.ExecuteNonQuery();if(result3<1){MessageBox.Show("error");}}catch(Exceptionex){MessageBox.Show("error");Console.WriteLine(ex.Message);}finally{connection.Close();}}this.chart3.Series[0].Points.AddXY(dat,temp3);}if(subdata=="4:"){data4=buf.Substring(2,6);textBox_tem4.Text=string.Format("{0}度",data4);doubletemp4=Convert.ToDouble(data1);if(temp4>50.0||temp4<-10.0){//PlaySound(@"e:/Music/login.wav",0,1);PlaySound(@"d:/qm.wav",0,1);try{connection.Open();//cmd.Connection=connection;stringsql4=string.Format("insertintowarn4(time,temperature)values('{0}','{1}')",lable_time.Text,textBox_tem4.Text);SqlCommandcmd4=newSqlCommand(sql4,connection);intresult4=cmd4.ExecuteNonQuery();if(result4<1){MessageBox.Show("error");}}catch(Exceptionex){MessageBox.Show("error");Console.WriteLine(ex.Message);}finally{connection.Close();}}this.chart4.Series[0].Points.AddXY(dat,temp4);}错误提示:“System.ArgumentOutOfRangeException”类型的未经处理的异常出现在System.Windows.Forms.dll中。其他信息:索引和长度必须引用该字符串内的位置。

解决方案

解决方案二:
错误提示:“System.ArgumentOutOfRangeException”类型的未经处理的异常出现在System.Windows.Forms.dll中。其他信息:索引和长度必须引用该字符串内的位置。异常信息已经很清楚了啊,索引越界。自己检查DisplayText中哪些地方可能索引越界。你不会单步调试吗?
解决方案三:
引用1楼songbing774933的回复:

错误提示:“System.ArgumentOutOfRangeException”类型的未经处理的异常出现在System.Windows.Forms.dll中。其他信息:索引和长度必须引用该字符串内的位置。异常信息已经很清楚了啊,索引越界。自己检查DisplayText中哪些地方可能索引越界。你不会单步调试吗?

我调了啊关键是没找到哪里越界了啊
解决方案四:
好了下位机传数据的时候有些数据漏掉了导致了截取该字符串的时候越界了

时间: 2024-12-03 18:27:24

求助求助的相关文章

技术交流 互相讨论-求助求助!!苹果手机qq 问题

问题描述 求助求助!!苹果手机qq 问题 苹果手机点击qq消息中的链接不能直接打开,但是把链接复制到苹果自带的浏览器中却能打开.怎么回事?哪位大神帮忙解答一下 解决方案 估计是屏蔽了吧,有可能,就跟微信里面打不开淘宝链接一样,.

c语言-号外号外 acm2011求助求助跪求了

问题描述 号外号外 acm2011求助求助跪求了 不知道哪里错了快疯了 求大神指点指点 怎么看都对啊 希望大神找出错误谢谢了 解决方案 ac了 你的算法有误,a=2,然后a=-3,都没错,但是下一步a=-(a+1)=-(-3+1)=2,之后的循环就全错了 #include <stdio.h> int main(){ int m; int n; float num=1; int a=2; scanf("%d",&m); while(m--){ scanf("

求助 求助 求助

问题描述 .将100元纸币兑换成10元.5元和1元纸币共20张,输出各种兑换法,并统计个数.c#语言用while循环作这几道题求助求助求助求助求助求助 解决方案 解决方案二:作业问同学去解决方案三:自己解决,这是最基本的解决方案四:主要算法如下:可以在此基础上进行修改成while就行了for(inti=0;i<10;i++)//如果是兑换成10元的话可以兑换10张{for(intj=0;j<20;j++)//如果都兑换成5元的可以兑换成20张{for(intk=0;k<100;k++)/

bios-求助求助~求助大神,我的电脑每次开机都是这样。

问题描述 求助求助~求助大神,我的电脑每次开机都是这样. 为什么我的电脑每次看机都是这样,虽然可以正常进入程序,但是每次都是这样 好麻烦,想问一下大神有什么好的解决办法吗?我的电脑是戴尔的,之前是Win10的系统,之后装上Win7之后出现的这种情况. 解决方案 这方面的问题我在修电脑的时候遇到过,不过不会影响系统的使用,所以我一直都没有管它的,我以前在BIOS里面调过,可是不见天又出来了,目前我是没有什么好的方法去弄这个了,朋友我劝你还是忽略的比较好,这个相当于电脑启东时的系统保护 解决方案二:

ftp-FTP这个怎么打开啊 求助求助

问题描述 FTP这个怎么打开啊 求助求助 ftp://ftp.isd.mel.nist.gov/pub/emc/rcslib/rcs_ex.zip 求助,搞的焦头烂额.. 解决方案 直接浏览器访问打开,,,,, 解决方案二: 建议使用 快车 FlashGet 下载. 1.将此行粘贴进粘贴板: 2.打开快车 FlashGet 3.菜单:"文件"-"新建普通任务",即建立一下载任务,开始下载了.

nggrid-ngGrid问题求助,求助啊

问题描述 ngGrid问题求助,求助啊 ngGrid显示的一个表格,当我单机按钮向表格中的数组push一个对象的时候,页面上 没有改变 只有网上滚动一下滚动条再看才会出现新加的那条记录

独福利待遇-雁联计算怎么样,求助求助

问题描述 雁联计算怎么样,求助求助 雁联计算这个公司怎么样阿,应届毕业生,我只做了个笔试就给我offer了,有点虚.求助 解决方案 金融IT服务外包公司.LZ的情况说明厉害呀 解决方案二: 楼主 在哪啊,我也快该就业了

求助求助 c# DirectX.Capture 视频叠加文字

问题描述 求助c#DirectX.Capture现在我已经捕获到摄像头的内容了我想在视频中添加字幕,请问我该如何做?谁能教教我?谢谢 解决方案 解决方案二:自已顶一下,帮帮我吧

各位大神们,求助求助!窗口间传递数据!!

问题描述 本人只学习过C语言,对.NET几乎小白.自己看了些资料做了个软件,是毕业设计!现在需要在两个窗口间传递数据,查看了好多资料看的我云里雾里,没办法,实在是不懂!希望从Form1中将数组传递到Form2中去,我把(自己认为的)一些没必要的代码我就删去了,免得大家看的麻烦!就是将Form1最下面申请的buf内存地址传递给Form2中最下面的huidu数组,只要告诉我怎么写代码就可以了,顺便说出方法就更好了,谢谢!对了,Form1和Form2不是MDI父子关系,因为设成MDI父子关系,Form