版本【2.6.20062.255】C1FlexGrid滚轮报错,没找到相应事件,哪位大神分享下处理ba...
winform C1FlexGrid控件,鼠标滚轮向下滚动,报错信息如下:应用程序不支持实时(JIT)调试。
有关详细信息,请参见此消息的结尾。
************** 异常文本 **************
System.OverflowException: 算术运算导致溢出。
在 C1.Win.C1FlexGrid.Util.BaseControls.ScrollableControl.WndProc(Message& m)
在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** 已加载的程序集 **************
mscorlib
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.9035 (WinRelRS5.050727-9000)
基本代码: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
Richard.Ma 发表于 2022-2-16 18:10
请上传一个demo上来重现问题,我来协助你验证原因
谢谢。原因大概找到了,下述的IntPtr 类型问题,winform是在平台anycpu编译的,当程序在64位系统上运行时,滚轮异常必现,当winform在X86上编译,在64位系统上运行没有异常。在想,这个回调函数参数应该是控件调用的,自己没法定义参数,控件引用的组件也是anycpu的,为什么出现类型不一致,导致溢出,目前没有发现好的解决办法
“IntPtr 类型被设计成整数,其大小适用于特定平台。即是说,此类型的实例在 32 位硬件和操作系统中将是 32 位,在 64 位硬件和操作系统上将是 64 位”
System.OverflowException: 算术运算导致溢出。
在 C1.Win.C1FlexGrid.Util.BaseControls.ScrollableControl.WndProc(Message& m)
在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) 请上传一个demo上来重现问题,我来协助你验证原因 Richard.Ma 发表于 2022-2-16 18:10
请上传一个demo上来重现问题,我来协助你验证原因
demo如附件。.net 2.0下的老版本
Richard.Ma 发表于 2022-2-16 18:10
请上传一个demo上来重现问题,我来协助你验证原因
demo如附件。.net 2.0下的老版本
你好,没有看到附件,麻烦检查一下
页:
[1]