我无法在WinCE上加载位图

时间:2009-10-27 19:28:05

标签: .net exception compact-framework resources bitmap

我写了一个小项目,在WinCE的屏幕上显示图标。图标是28x28 16色BMP文件,放在主资源文件(Resources.resx)中(主窗体的resx有同样的问题,GIF文件也不起作用)。

我第一次尝试从资源中获取任何位图时,Microsoft.AGL.Common.MISC.HandleAr抛出了一个带有消息“异常”的异常类型的异常,它是从System.Drawing.Bitmap._InitFromMemoryStream中调用的。

我有两个WinCE设备。此错误仅发生在其中一个上;其他工作正常。除了这个问题,该应用程序适用于两个设备。该应用程序还使用一些涉及DIB的本机代码,并且工作正常。有什么想法吗?

更新:如果我尝试从文件加载位图,则会发生同样的错误。我也尝试过1位(黑色和白色),8位和24位位图无效(WinCE帧缓冲区最常见的是16位,但我没有可以产生16位位图的图像编辑器。)< / p>

1 个答案:

答案 0 :(得分:0)

我遇到了类似的问题并且已经工作了好几天了。我要尝试的下一件事是将位图作为DIB存储在资源文件中,使用LoadResource加载它,使用GetCompatibleDC将其转换为DDB并将DIB“绘制”到DC,这应创建一个DDB。我认为关键是使用CreateCompatibleBitmap。我将报告我的调查结果。