C# 从WinCE设备中的MemoryStream创建位图时,内存出现异常

C# 从WinCE设备中的MemoryStream创建位图时,内存出现异常,c#,bitmap,windows-ce,memorystream,C#,Bitmap,Windows Ce,Memorystream,您好,我使用的是WinCE设备平台3.5,在创建位图时,内存异常。我的图像格式是JPEG。是否有其他方法可以避免此异常 我已经遇到此问题,请尝试以下操作: using (MemoryStream ms = imager.CaptureImageNow().MemoryStream ) { using (Bitmap bmp = new Bitmap(ms)) // Memory Out of Exception occurs here { this.Previ

您好,我使用的是WinCE设备平台3.5,在创建位图时,内存异常。我的图像格式是JPEG。是否有其他方法可以避免此异常

我已经遇到此问题,请尝试以下操作:

using (MemoryStream ms = imager.CaptureImageNow().MemoryStream ) 
{
   using (Bitmap bmp = new Bitmap(ms)) // Memory Out of Exception occurs here
   {
           this.PreviewImage( bmp );

   }
}
byte[] imgDatas = null;
using (MemoryStream ms = imager.CaptureImageNow().MemoryStream ) 
{
    imgDatas = ms.GetBuffer();
}

ImageConverter ic = new ImageConverter();
Image img = (Image)ic.ConvertFrom(imgDatas);

using (Bitmap bmp = new Bitmap(img))
{
    this.PreviewImage( bmp );
}
你能试试这个吗

using (MemoryStream ms = imager.CaptureImageNow().MemoryStream ) 
{
   using (Bitmap bmp = new Bitmap(ms)) // Memory Out of Exception occurs here
   {
           this.PreviewImage( bmp );

   }
}
byte[] imgDatas = null;
using (MemoryStream ms = imager.CaptureImageNow().MemoryStream ) 
{
    imgDatas = ms.GetBuffer();
}

ImageConverter ic = new ImageConverter();
Image img = (Image)ic.ConvertFrom(imgDatas);

using (Bitmap bmp = new Bitmap(img))
{
    this.PreviewImage( bmp );
}

没有足够的信息如何避免异常:在程序中使用更少的内存,从未使用的内容中释放内存,向机器添加更多内存。你能发布异常吗?最好是使用堆栈跟踪。您当前发布的是一段随机的代码片段,可能根本不是问题:您能再给我们一点吗?您尝试加载的图片有多大的hxw和多大的像素深度?我打赌你的设备没有足够的内存容纳它。嗨,ImageConverter不可用,因为我的设备有WinCE 3.5 platformOk,因此,请尝试使用加载了第一个内存流的GetBuffer的中间内存流Microsoft.AGL.Common.MISC.HandleArPAL\u ERROR ar\r\nbei System.Drawing.Bitmap.\u initFromMemoryStream MemoryStream mstream\r\nbei System.Drawing.Bitmap..ctorStream\r\nbei\r\nbei System.Reflection.RuntimeMethodInfo.InternalInvokerUnitimeMethodInfortmi、Object obj、BindingFlags invokeAttr、Binder Binder、Object parameters、CultureInfo culture、Boolean isBinderDefault、Assembly调用者、Boolean verifyAccess、StackCrawlMark&stackMark\r\n我尝试了另一个中间内存流,但问题仍在发生,上面是堆栈跟踪