应用程序在平板电脑上抛出OutOfMemoryExceptions但剩余足够的内存

时间:2012-03-07 16:10:27

标签: c# .net wpf out-of-memory tablet

我写了一个WPF应用程序。它在每台电脑和我的测试平板电脑上运行良好。

只有来自客户的一台平板电脑才会在加载主表单后抛出OutOfMemoryExeptions。某些图标在我的表单上可见,一些在启动过程中稍后加载的图标不可见。那些图像不大或什么(每个只有200 kb)。任务管理器说只使用了800 MB(它有2 GB内存)。所以有足够的记忆......

有趣的是,如果我的客户卸载了英特尔图形驱动程序,应用程序就会运行,但这不是一个好的解决方案。

平板电脑的规格: 它是一款带2 GB内存,Intel GMA 600显卡和Windows 7专业版的Kupa X11。

任何人都知道它可以是什么?

谢谢你, 丹尼尔

2 个答案:

答案 0 :(得分:1)

.NET应用程序仅限于可以使用的内存量

  

.NET运行时将允许您的应用使用最多约3GB的地址空间。但是,根据您的分配方式,可能没有足够大的连续内存块来满足您的分配。此外,.NET强加了2GB的对象大小限制,因此尝试分配大于2GB的数组将失败     - msdn question

答案 1 :(得分:0)

在我看来,如果应用程序在卸载当前图形驱动程序后运行,则说明驱动程序存在问题,而OutOfMemoryException可能是视频内存。

请向英特尔咨询更新的驱动程序或使用Windows 7的默认视频(如果这是一个选项)。

您可以尝试的另一件事是在计算机上更新DirectX。