读取串口数据添加了一个TimeoutException异常处理方法,出现了dll异常

报错信息:
在 System.TimeoutException中第一次偶然出现的"System.dll"类型异常。
之后程序就不在接收数据了,也不出现程序报错,必须重新启动程序,才能继续接收数据。
错误一般会在程序运行1天之后出现假死现象。是不是因为我只是把错误信息记下来了,并没有进行错误处理?我的逻辑是,错误之后,丢弃这一组数据,然后重新进行数据接收。
跪求,本人无法解觉了现在。
相关代码:
//开始接收
public void StartReceive()
{
int temp = 0;
while (true)
{
try
{
temp = sp.ReadByte();
}
catch (TimeoutException ex)
{
LogTool.WriteEduAppLog(ex.Message, ex.StackTrace);
}
}
//将报错相关信息写入本地的log文档
public class LogTool
{
//当前程序的日志文件目录
static string strAppLofDir = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "logInfo.txt";
public static void WriteEduAppLog(string ErrorReason, string StackTrace)
{
WriteLog(ErrorReason, StackTrace, "EduApp.log");
}
private static void WriteLog(string ErrorReason, string StackTrace, string logFileName)
{
//判断有没有日志目录,没有就创建
DirectoryInfo directoryInfo = new DirectoryInfo(strAppLofDir);
if (!directoryInfo.Exists)
directoryInfo.Create();
StringBuilder logInfo = new StringBuilder("");
string currentTime = System.DateTime.Now.ToString("[yyyy-MM-dd HH:mm:ss]");
logInfo.Append("\n").Append(currentTime).Append(":").Append(ErrorReason).Append("\n").Append(StackTrace);
System.IO.File.AppendAllText(strAppLofDir + logFileName, logInfo.ToString());
}
}

c#
0

1个回答

楼主 这是C#的一些项目实例代码 你可以参考一下
http://download.csdn.net/album/detail/1361

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
(二)C# SerialPort串口ReadTimeout 超时异常。“System.TimeoutException”类型的未经处理异常在 System.dll 中发生 其他信息: 操作已超时。
一、简介nn系统采用之前的系统:nn相关的链接为nnhttps://blog.csdn.net/u011854789/article/details/51895014nnhttps://blog.csdn.net/weixinhum/article/details/53684151nnhttp://www.cnblogs.com/Traveller-Lee/p/6940221.html(主要参考)...
C# 串口通讯、数据获取方式分析比较,数据解析以及可能的异常处理
大致需求nn最近有这样一个需求,采用某国内公司的测距模块,并形成指定样式的模块组,串口同学,有数据结构和通讯说明文档;nn其实网上有很多提供源码的串口调试工具之类的资源,一般的需求都能从这些资源中找到解决方案,我这里也仅仅是记录一下我的开发过程,已经遇到过的一些问题和解决办法,希望能帮到一些需要的人。nn首先,既然是模组,那就是要同时和多个模块建立通讯。网上的串口通讯工具一般都仅仅是单通讯,要实现...
网页爬虫爬取数据出现 LockTimeoutException lock expired问题的可能解决方式
最近在做新闻客户端,需要从网上抓取数据并保存到数据库中,具体流程如下:rn     安卓客户端向服务器请求数据,服务器接收到请求后开启爬虫线程,后台抓取指定网页的数据,将抓到的数据以javabean的形式暂存在一个list中并返回该list,此时数据库方面获取该list,并插入到数据表中。rn一切准备就绪后,运行服务器,安装apk,满心欢心,充满期待的准备看数据蹦出来,rn然而,问题来了,cons
MVC表单提交提示:已经加入含有相同索引键的项目
提交表單時,提示的錯誤信息為“已經加入含有相同索引鍵的項目”。造成該錯誤的主要原因是ViewModel中出現重複定義的字段rnrnrnrnrnrnrnrnrnrn在ViewModel中找到重複定義的項目並修改或者在頁面使用一個新的ViewModel
串口数据异常,数据段获取到两段或者三段
/**串口数据初始化了两次,出现了本来是一段数据的,却获取到几段被分割的数据**/npackage chuankou;nnimport java.io.BufferedInputStream;nimport java.io.BufferedOutputStream;nimport java.io.IOException;nimport java.io.InputStream;nimport ja
dobbo 消费者 调用dubbo接口出现 time out 异常的解决方法
今天我调用别人的dubbo接口的时候,一直提示调用接口 timeout 的异常,最后发现是提供者的系统异常引起的问题。n我简单的总结一下出现time out异常的原因:n1:服务器问题:服务器的带宽、内存、CPU、存储空间等不足的时候会出现该异常。n2:生产者问题:生产者本身的接口实现有BUG,消费者调用生产者的接口可能也会引起time out 异常。n3:消费者的配置问题:设置的超时时间
解决Linux下串口数据接收不全的异常问题
1、引言nn    最近在Linux下调试串口程序,遇到了串口数据接收不全的异常问题,经过将近一上午的努力终于找到问题根源,特此分享给大家,此次调试过程中用到了主要用到了minicom工具,至于minicom的使用大家可以自行查找相关资料。nn2、正文nn    此次调试环境实在两个平台下,负责发送串口数据一方是VxWorks平台,负责接收的一方是arm+Linux平台,发送的是一些必要的时间和其...
Linux读二进制串口数据异常,数据校验出错.
今天做USB的Gsensor程序发现读到的数据总是校验不过,无法进一步解析数据,而在Windows下通过工具读出来的数据均是正常的。nn于是做出了串口读上来的数据有加过工的可能,因为该Sensor是以二进制形式进行数据上报的,通常串口配置是以ASCII码为准,猜测有可能是将读到的回车和换行之类的做了处理,因为便于ASCII码的字串的显示。nn于是通过屏蔽这些标志后 , 后解决串口读二进制数据校验错...
异常处理 ppt java
异常和异常处理的两种方法 Java的异常类 Java的异常处理方法 异常的抛出和处理 自定义的异常类
常见的异常产生的原因和解决办法
一、数组越界异常nJava.lang.ArrayIndexOutofBoundsExceptionn产生的原因:访问了不存在的索引n解决的办法:索引0到数组长度-1的范围内取值n二、空指针异常nJava.lang.NullPointerExceptionn产生的原因:对象没有创建就访问了元素或者方法或者属性n解决的办法:先找出出现的所有引用类型,判断哪个对象是没有new的元素或者方法
java中的小问题- 数字格式异常(备忘)
7-1 数字格式异常 (10 分)n(NumberFormatException数字格式异常)编写一个程序,提示用户读取两个整数,然后显示他们的和。程序应该在输入不正确时提示用户再次输入数字。n输入格式:ni 9 (第1次输入) l 8 (第2次输入) 5 6 (第3次输入)n输出格式:nIncorrect input and re-enter two integers: (第1次输出提示) In...
读取数据源出现未知错误:Remoting 信道异常
解决方案:1、IIS问题在应用服务器配置工具里面,作清除数据配置,然后重启IIS,再进入应用服务器里重新设置服务器连接即可还不行的话卸载framework,卸载IIS(添加/删除windows组件中把internet信息服务这个勾去掉),重启计算机,重装IIS,重装framework。重新配置用友应用服务器。以上顺序不要搞反先装iis再装framework2、可能某些软件占用了80端口,导致用友I...
异常的处理方式
登录页面:nnnn主页:nnnn错误页面:nnnn步骤流程示意图:nnnn示例代码如下:nn在登陆中异常的处理:nnnpackage com.tarena.netctoss.dao;nnimport java.sql.Connection;nimport java.sql.PreparedStatement;nimport java.sql.ResultSet;nimport java.sql.S...
openCV 出现 0x770413C5 (ntdll.dll) 第一机会异常: 0xC0000005: 读取位置 0x00000008 时发生访问冲突 解决办法
   今天在运行一段简单的openCV显示图片的程序里出现了从未见过的一种奇怪的异常:0x770413C5 (ntdll.dll) 第一机会异常:  0xC0000005:  读取位置 0x00000008 时发生访问冲突。nnnn代码如下:nn#include "stdafx.h"n#include "opencv2/opencv.hpp"n#include <iostream>nu...
JSP中的异常处理
JSP中的异常处理    rn    一、try/catch/finally/throws/throw    rn     // 在局部代码里处理异常。    rn    二、errorPage, isErrorPage    rn       // 在整个页面处理异常。    rn    1.errorPage    rn    形如:    rn       表示:需要错误处理的页面    
“Emgu.CV.CvInvoke”的类型初始值设定项引发异常。无法加载 DLL“cvextern”
关于System.TypeInitializationException: “Emgu.CV.CvInvoke”的类型初始值设定项引发异常。System.DllNotFoundException: 无法加载 DLL“cvextern”。n这个问题是在调用emgucv 3.1.0版本上发现的,首先应该确定该程序集(cvextern.dll,也可能在运行目录下的x86或者x64文件夹目录下)是否在当前...
数据预处理之异常值处理
异常值,即在数据集中存在不合理的值,又称离群点。比如年龄为-1,笔记本电脑重量为1吨等,都属于异常值的范围。从集合角度来看,异常值即离群点
【Python】Python安装三方库包出现timeout error的解决方法
参考了几种网上的办法,下述办法最便捷且亲测有效。nn1.新建一个.py文件nnnnnimport osn nini="""[global]nindex-url = https://pypi.doubanio.com/simple/n[install]ntrusted-host=pypi.doubanio.comn"""npippath=os.environ["USERPROFILE"]+"\\pi...
关于使用EmguCV出现 “无法加载 DLL“cvextern”: 找不到指定的程序” 的解决方法
1.按要求将Emgu.CV.UI,Emgu.CV.World,Emgu.CV.World,Emgu.CV.GL添加引用到项目。rn2.然后将WinForm添加一个按钮和PictureBox,后台代码如下:rnusing System;nusing System.Collections.Generic;nusing System.ComponentModel;nusing System.Data;n
Java 数组 异常处理
题目:rnrn从命令行输入5个整数,放入一整型数组,然后打印输出。要求:rn如果输入数据不为整数,要捕获输入不匹配异常,显示“请输入整数”;如果输入数据多余5个,捕获数组越界异常,显示“请输入5个整数”。rn无论是否发生异常,都输出“感谢使用本程序!”rnrn代码:rnimport java.util.InputMismatchException;nimport java.util.Scanner
C#基础(1) 异常实现基本错误处理
本文作为C#基础知识的查漏补缺使用,所以并不全面.nn参考书籍<<C#本质论>>,<<C#高级编程>>nnnstatic void Main(string[] args)nn{nnWriteLine("Hello World!");nn nnstring str_first_name;nnstring str_age;nnint int_age;nn...
串口通讯中出现的错误(1)
 问题1: 在做串口接收接收中断时,有这么一个现象,当接收到数据后,进入中断,如果再次发送的话,就进不去中断了,并且程序阻塞住了?为什么呢 源码如下:   原因如下:在数据寄存器和数据总线之间有一个移位寄存器,接收数据是先把数据放在移位寄存器中,如果没有读取移位寄存器里面的数值的话,就不能继续接收数据了,因此,在接收到一次数据后,如果不读取其中的数据的话就会阻塞。 所以 只要将注释部分的数据读取出...
清理数据异常
清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常清理数据异常
C#异常处理
讲解C#异常的常规处理方法,及如何定义自己的异常。
调用 Dll "试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)
应对DLL调用 n调用 Dll “试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B) n这种报错的解决方案nnc#调用C++ DLL 时必须注意是多少位的 n如果DLL 是32位编译的,那么C#也要用32 n如果DLL 是64位编译的,那么C#也哟用64 n在哪里更改呢? n=>右击项目=>单击属性=>点击生成=>目标平台=选择64/32/a...
《数据挖掘导论》--7 异常检测
异常处理部分介绍了数据挖掘前异常数据的类型及处理方法,及一些算法异常,包括过拟合等问题的处理。
java出现的异常及处理方法
1、MyBatis中数据返回类型不对,情况如下:nn(1)Mapper method 'com.forms.jms.webapp.systemmanage.doc.dao.DocDAO.delete' has an unsupported return type: class [Inn2、The request was rejected because the URL contained a po...
C#编程中遇到的一些异常及部分异常的解决方法
以下内容是在本人在C#编程中遇到的异常,针对部分异常给出了解决办法,但是此解决方法是否真的好用,有待进一步考证,仅供参考。rn(1)“System.Invalid Operation Exception”类型的未经处理的异常,出现在System.Windows.Forms.dll中,其他信息:在创建窗口的句柄前,不能在控件上调用Invoke或                BeginInvoke。
python3 异常处理(一)
一、学习链接:http://docs.python-requests.org/en/master/_modules/requests/exceptions/?highlight=timeouthttp://docs.python-requests.org/en/master/api/#requests.Requesthttp://docs.python-requests.org/zh_CN/lat...
C# 银行简易管理系统 源码
在原有的基础之上添加了异常效果!使得系统较完整!
android应用开发中收集的异常日志解决方法记录
这里主要是列出开发中收集的一些错误日志,以及解决方案,仅供参考,也有待解决的问题 n1, ListView 中出现java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0nat java.util.Arra
使用ReadFile程序崩溃的原因
在使用这个函数的时候,很多人都不会特意的去看MSDN文档后面的Remarks解释,所以可能有时候会出问题,而且不知道出在哪里。这两个函数的其它参数就不详细解释了,就说说lpNumberOfBytesRead这个参数。MSDN原文:When a read operation reaches the end of a file, this function returns TRUE and sets *
Unity 使用Excel 读取文件 所碰到的坑 使用Excel.dll读取
从上午12点到晚上10点 一直在搞如何使用Unity来取Excel文件内的东西所碰到的坑n1.Excel.Dll,ICSharpCode.SharpZipLib.dll 需要放置在/Assets/Plaugin文件夹下面,要不再导出后会找不到文件n2.ExcelDateReader是在Excel内部的 ,如果单独导入ExcelDateReader,不可以使用AsDateReader来转换格式为Da...
明明已经有打电话的权限,还是报异常
n n n 有些机器因为系统原因会导致即使我们在清单文件已经申请了打电话权限,android:name="android.permission.CALL_PHONE" />还是报异常,这时候还需要再加一个权限:android:name="android.hardware.telephony"android:required="false" />n ...
数据库异常处理
1、当你的数据库出现黄色感叹号,鼠标放上提示数据库异常时,请不要慌张,可以按照以下代码帮你恢复正常。rn--HfSysDb为修复的数据名rnUSE MASTERrnGOrnSP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDErnGOrnALTER DATABASE HfSysDb SET EMERGENCYrnGOrnsp_dboptio
mysql中的唯一键索引,插入重复数据直接报错的解决办法
mysql  有  insert ignore into  这个关键字rn他这样,当违背了唯一约束的时候~就会直接跳过,不会报错。
json架包和java对象转json实例
总结了使用中可能出现的异常与一些特殊要求的处理方法,单元测试完全通过
labview 串口开发遇到的问题
1.labview中“VISA资源名称”这个函数在哪?nnn这不是函数,只是个输入或输出控件。在一个VISA函数的这个接线端上右键创建输入(输出)控件即可。
向字典中添加重复键会报错
结论:向字典中添加相同的值键会抛出异常,所以在添加时,需要检验该字典是否已经包含该键。rnusing System;rnusing System.Collections.Generic;rnusing System.Linq;rnusing System.Text;rnusing System.Threading.Tasks;rnrnrnnamespace ConsoleApp8rn{rn   
Python3 错误和异常
Python3 错误和异常异常处理>>> while True:n try:n x = int(input("Please enter a number: "))n breakn except ValueError:n print("Oops! That was no valid nu...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 java异常学习 java学习异常