VB.NET开发的上位机有时候会报“算数运算导致溢出”错误

guangzi8531 2014-06-18 10:28:29
大家好:

目前有VB.NET2010开发一个监控软件,涉及到将下位机上传的数据保存到指定的excel文件中。但是在保存的过程中,有时候会出现“算数运算导致溢出”错误。如图片显示。不知道怎么回事。怀疑是在保存excel的过程中导致的溢出,但是为什么在之前没有溢出那。说明一下,自己的数据没有超过65535行。

系统提示信息如下:

有关调用实时(JIT)调试而不是此对话框的详细信息,
请参见此消息的结尾。

************** 异常文本 **************
System.OverflowException: 算术运算导致溢出。
在 System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)
在 System.Windows.Forms.Control.Invoke(Delegate method, Object[] args)
在 PowerSystemMonitor.Form1.AlarmRecord(Int32 AlarmCode, Int32 FaultCode, Int32 BmsVoltSt, Int32 BmsCurrSt, Int32 BmsTempSt, Int32 BmsAlarmSt, Int32 BmsFaultSt) 位置 E:\FEW\DQ_Project\Branchs\Huangruiguang\DQSWJ\Comat483010C\Form1.vb:行号 1432
在 PowerSystemMonitor.Form1.Timer1_Tick(Object sender, EventArgs e) 位置 E:\FEW\DQ_Project\Branchs\Huangruiguang\DQSWJ\Comat483010C\Form1.vb:行号 365
在 System.Windows.Forms.Timer.OnTick(EventArgs e)
在 System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** 已加载的程序集 **************
mscorlib
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 (RTMRel.030319-0100)
基本代码: file:///C:/WINDOWS/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
Power System Monitor
程序集版本: 0.0.0.1
Win32 版本: 0.0.1.4
基本代码: file:///E:/严卫兵/上位机0.0.1.4/Power%20System%20Monitor.exe
----------------------------------------
Microsoft.VisualBasic
程序集版本: 10.0.0.0
Win32 版本: 10.0.30319.1 built by: RTMRel
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 built by: RTMRel
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 built by: RTMRel
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Windows.Forms
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 built by: RTMRel
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 built by: RTMRel
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 (RTMRel.030319-0100)
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 built by: RTMRel
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Runtime.Remoting
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 (RTMRel.030319-0100)
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
System.Data
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 (RTMRel.030319-0100)
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Windows.Forms.DataVisualization
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.DataVisualization/v4.0_4.0.0.0__31bf3856ad364e35/System.Windows.Forms.DataVisualization.dll
----------------------------------------
Microsoft.VisualBasic.PowerPacks.Vs
程序集版本: 10.0.0.0
Win32 版本: 10.0.30319.1
基本代码: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic.PowerPacks.Vs/10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.PowerPacks.Vs.dll
----------------------------------------
System.Numerics
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 built by: RTMRel
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------
System.Windows.Forms.DataVisualization.resources
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.DataVisualization.resources/v4.0_4.0.0.0_zh-Hans_31bf3856ad364e35/System.Windows.Forms.DataVisualization.resources.dll
----------------------------------------
System.Windows.Forms.resources
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 built by: RTMRel
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
mscorlib.resources
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 (RTMRel.030319-0100)
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
Microsoft.VisualBasic.resources
程序集版本: 10.0.0.0
Win32 版本: 10.0.30319.1 built by: RTMRel
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic.resources/v4.0_10.0.0.0_zh-Hans_b03f5f7f11d50a3a/Microsoft.VisualBasic.resources.dll
----------------------------------------
Accessibility
程序集版本: 4.0.0.0
Win32 版本: 4.0.30319.1 built by: RTMRel
基本代码: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
Microsoft.Office.Interop.Excel
程序集版本: 11.0.0.0
Win32 版本: 11.0.8161
基本代码: file:///C:/WINDOWS/assembly/GAC/Microsoft.Office.Interop.Excel/11.0.0.0__71e9bce111e9429c/Microsoft.Office.Interop.Excel.dll
----------------------------------------
office
程序集版本: 11.0.0.0
Win32 版本: 11.0.8161
基本代码: file:///C:/WINDOWS/assembly/GAC/office/11.0.0.0__71e9bce111e9429c/office.dll
----------------------------------------

************** JIT 调试 **************
要启用实时(JIT)调试,
该应用程序或计算机的 .config 文件(machine.config)的 system.windows.forms 节中必须设置
jitDebugging 值。
编译应用程序时还必须启用
调试。

例如:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

启用 JIT 调试后,任何未经处理的异常
都将被发送到在此计算机上注册的 JIT 调试器,
而不是由此对话框处理。


...全文
588 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
guangzi8531 2014-08-10
  • 打赏
  • 举报
回复
已经解决,是ushort型赋给integer型导致,全部改成integer型就行了。
Tiger_Zhao 2014-08-07
  • 打赏
  • 举报
回复
用源代码调试。
菜单“调试\异常”,然后对话框中找到 System.OverflowException,将“引发”选上。
这样出错时代码就马上停止,再慢慢分析吧。
pengwu666 2014-08-07
  • 打赏
  • 举报
回复
如果你用到了long一定会出现这个问题。
guangzi8531 2014-06-20
  • 打赏
  • 举报
回复
Ushort型相异或付给integer型,应该是没问题的呀,相当于16位赋值给32位
yls0221 2014-06-19
  • 打赏
  • 举报
回复
是不是值类型设定小了
wangnaisheng 2014-06-18
  • 打赏
  • 举报
回复
算数运算导致溢出,也有可能是一个int32的值超出[Int32.MinValue, Int32.MaxValue] 的范围,你可以检查一下你的计算。

16,553

社区成员

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

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