问题标签 [overflowexception]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 向窗口发送 WM_KEYUP 消息会产生 OverflowException
我正在尝试实现一个程序,该程序将相同的消息发送到一个窗口,如果连续按下某个键,该窗口将被发送。这是应用程序代码的一部分(整个 Form1.cs 代码在此处):
到达代码中的 WM_KEYUP SendMessage 后,程序崩溃并给出错误:
我该如何解决这个错误?WM_KEYUP 之前的 4 个 SendMessage 调用工作正常,它们将 2 个字母“a”发送到记事本。
感谢您的回复
c# - 为什么添加两个结果大于 int.MaxValue 的大整数不会引发溢出异常?
如果我们在程序中使用以下循环,则循环永远不会在 C# 4.0 中结束
这是因为 int.MaxValue (2147483647) 加 1 不会导致溢出异常,但会导致 -2147483648(考虑到 32 位 int 和 2 的补码)。
最近这种行为似乎发生了变化。请参阅问题算术运算导致溢出异常。此更改背后的原因可能是什么?
c# - 递归堆栈大小?
为什么在调用上面的示例时获取递归函数并抛出 StackOverflowException。
(因为超过了默认的递归堆栈大小?)
但我想知道如何解决这个问题。
谢谢。
.net - 为什么十进制->字节转换会发生OverflowExceptions,而uint->字节不会发生溢出异常?
我想知道是否有人可以解释我看到的溢出异常。
考虑以下代码:
我只在最后一行得到一个 OverflowException(当将 adecimal
转换为 a时byte
)。uint
在将相同的值转换为 a时,我没有得到它byte
。
我不明白为什么会这样。有什么建议么?
mschart - 在 MSChart 中使用 NaN 值会导致溢出异常
我正在使用 MSChart 实时绘制应用程序...我需要设置一些 y 值,NaN
但我遇到了溢出异常。这是发生它的代码部分:
调用是为了避免跨线程问题。
知道如何才能避免异常吗?我尝试在SetValueY
通话之前使用 unchecked 关键字,但没有任何变化。
c# - 复制到数据表时,值对于 Int16 来说太大或太小
问:
以下代码:
抛出异常:
对于 Int16,值太大或太小。无法在 emp_num 列中存储 <103930>。预期类型是 Int16。---> System.OverflowException:对于 Int16,值太大或太小。
c# - SQLCLR 项目中的 SqlDecimal 问题
使用 SqlDecimals 时,我得到了一些意想不到的结果。最后,在划分 2 个 SqlDecimal 时,它似乎归结为规模问题。
c# 示例代码如下所示:
SQL 测试代码如下所示:
第二个选择返回我以下错误:
在网上搜索时,我发现很多与将 SqlDecimal 转换为 Decimal 时的舍入错误相关的问题,但在我的情况下,从头到尾一切都是 SqlDecimal,因为我想避免这种情况。同样,我“希望”结果与在 SQL 中本地实现的方式相同。但是,唉。即使它没有溢出,它也会在“边界情况”中给我不同的结果。
任何人都有关于如何解决这个问题或至少解决它的任何提示?SqlDecimal 是否在内部使用(.Net)小数,因此不能将信息塞进它的 3 个字节中?!?!?
PS:我无法预测数字(p,s)的哪些组合将传递给函数,但 38,8 是“可接受的”。我希望为我的原始 UDF 制作一个更快的 SQLCLR 版本(它所做的不仅仅是除法 =)。诚然,它更快,但它应该适用于相同的数字范围。
.net - WinAPICodePack 中的 TaskDialog 在 .NET 4.0 上不起作用
我正在编写一个应用程序并想使用该TaskDialogIndirect
函数 - 但是我不想编写大量的 P/Invoke 内容等,所以我包含了 WinAPICodePack。不过有一个问题!当我创建一个控件TaskDialog
并将其添加到对话框时,一切正常。但是,运行这些Show
方法会导致OverflowException
在 mscorlib 中。我将此归结为一些指针处理和编组。
试验代码的结果是,我发现必须为 .NET 3.5 和包含应用程序TOO编译 DLL 。让我的应用程序在 .NET 4.0 上调用此错误...关于解决方法的任何想法 - 或者您甚至可以重现此错误吗?
另一个问题是我可以将Icon
属性设置为我想要的任何东西,但根本不显示图标。我必须设置一个Opened
动态设置图标的事件......
信息:在 Windows 8 Pro x64 RTM 上运行 Visual Studio 2012 RTM。应用程序是一个标准的 WPF 应用程序。
示例代码:
windows-8 - IntPtr.ToInt32() 和 x64 系统
在我的 c# dll 中,我有一些这样的代码可以与一些非托管 dll 交互:
在安装 Windows 8 之前,在 x64 系统上使用带有 .Net2 和 .Net4 的 AnyCPU 编译的 dll 时,这一直运行良好。
在 Windows 8 中使用 .Net4 dll 时,我在 buffer.ToInt32() 调用中收到 OverFlowException(“算术运算导致溢出。”)。
IntPtr.ToInt32() 的 MSDN 文档说:
“OverflowException:在 64 位平台上,此实例的值太大或太小,无法表示为 32 位有符号整数。”
我想知道为什么这个问题只出现在 Windows 8 中,以及修复它的正确方法是什么。
我应该使用这样的方法,而不是 IntPtr.ToInt32() 调用吗?
c# - 为什么这不会产生溢出异常?
我正在使用 LinqPad 测试一些东西,并对以下代码没有产生异常感到惊讶:
这会产生以下输出:
幸运的是,我希望有这种行为,但我假设这会导致 anOverflowException
被抛出。
在以下情况下,会在运行时引发 OverflowException:
- 算术运算产生的结果超出了运算返回的数据类型的范围。
- 强制转换或转换操作尝试执行缩小转换,并且源数据类型的值超出目标数据类型的范围。
为什么手术不lSmallValue - lBigValue
属于第一类?