.Net中使用com组件后发生System.ArithmeticException异常的解决办法

2016-01-29 12:35 6 1 收藏

.Net中使用com组件后发生System.ArithmeticException异常的解决办法,.Net中使用com组件后发生System.ArithmeticException异常的解决办法

【 tulaoshi.com - ASP.NET 】


最近在开发一个.Net程序,其中涉及到对com组件的调用,在调用完以后如果使用一些小的测试程序继续运行,一切正常,但是在使用带有GUI的form程序继续执行时,总是出现以下异常Exception: System.ArithmeticExceptionMessage: 算术运算中发生溢出或下溢。Source: System.Drawing at System.Drawing.Font.Initialize(FontFamily family, Single emSize, FontStyle style, GraphicsUnit unit, Byte gdiCharSet, Boolean gdiVerticalFont) at System.Drawing.Font..ctor(String familyName, Single emSize, FontStyle style, GraphicsUnit unit, Byte gdiCharSet) at Payment.Phone.ErrorForm.InitializeComponent() in E:cvsrootdevelopepaymentPhoneErrorForm.cs:line 108 at Payment.Phone.ErrorForm..ctor(Util util, String msg) in E:cvsrootdevelopepaymentPhoneErrorForm.cs:line 139 at Payment.Phone.ConfirmForm.lblNext_Click(Object sender, EventArgs e) in E:cvsrootdevelopepaymentPhoneConfirmForm.cs:line 212
后来到处找资料,花了我一天的时间才给解决,以下是我的解决办法:1.声明一个DLL掉用 [DllImport("msvcr70.dll", CallingConvention = CallingConvention.Cdecl)] unsafe public static extern int _controlfp(int n, int mask);2.在代码中添加以下代码方法 internal void ResetFPCR() { const int _EM_OVERFLOW = 0x0009001F; const int _MCW_EM = 0x000FFFFF; _controlfp(_EM_OVERFLOW, _MCW_EM); }3.在调用完com组件后,调用以上方法,如: //这里调用com组件 //然后执行Reset方法 ResetFPCR(); 注:具体详细请看http://support.microsoft.com/default.aspx?scid=KB;EN-US;q326219&

来源:https://www.tulaoshi.com/n/20160129/1486731.html

延伸阅读
C#中使Datawindow.Net组件处理数据 Datawindow.Net为PB专为MS.Net开发的数据访问组件。1. 安装先安装.net2003 ,框架版本1.1,然后安装DataWindow.Net组件及设计编译环境。安装后在.net2003窗体设计时会出现Sybase DataWindow控件页签。 2. 使用DataWindow控件可以直接在C#窗体中使用。3. 设计DataWindow在PB或DataWindow设计环境中设计数据...
越狱后iPhone5安全模式解决办法 iPhone5使用evasi0n 1.0进行完美越狱后进入安全模式该怎么办呢?其实使用eTulaoshi.comvasi0n 1.0对iPhone5完美越狱,除了会进入安全模式这个BUG外,还会有天气闪退,插件不兼容等问题。好在现在evasi0n已经更新到了1.5.1,iPhone5完美越狱后进入安全模式的问题也得到了一定改善。如果使用evasi0n 1.5.1TuLa...
标签: windows10
Win10下IE无法使用的解决办法   可能有些朋友习惯使用或者因为某些特殊需要离不开IE浏览器,在Win10中有时候可能会遇到IE无法正常使用的问题,此时可尝试参考微软帮助和支持提供的方法来解决,共三个方案。 方案一: 重置Winsock目录: 1、按Win+X,打开命令提示符(管理员) 2、输入命令netsh winsock reset并...
标签: 电脑入门
一、电源信号灯是否恒亮 倘若电源信号灯不亮,首先要排查电源方面的问题。如是否因市电供电不稳定造成掉线,ADSL Modem本身的电源是否存在问题等。 用手触摸ADSL Modem外壳,感觉非常烫手,此时不妨将ADSL Modem暂时关机待到冷却后再开机使用,或者把它放置到比较通风的位置,这样也可以消除掉线故障。 二、检查网线是否松动 对于大多数宽...
夏季控油:合理使用护肤品 夏季脸上出油的原因很可能是没有选对护肤产品。很多人无论春夏秋冬都是用的同种类型的护肤品,这种做法是错误的。因为夏季天气炎热,而人体油脂分泌比其他季节要旺盛,所以要选对夏季护肤产品。同时,因为多数人脸上出油的部位都是在T区鼻翼两边。而很多人在使用护肤品时全脸都使用一样的产品,这种做法也是错...

经验教程

627

收藏

50
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部