繁体   English   中英

如何在C#中解决system.outofmemoryexception

[英]how to solve system.outofmemoryexception in c#

当我们上传视频并单击进入按钮以使用此代码将视频转换为缩略图时,会生成错误“ System.OutOfMemoryException:内存不足”。

我们正在使用此代码

fpUplaodVideo.SaveAs(Server.MapPath("~/UploadFiles/SiteUserID_" + SiteUserID + "/UploadVideo/" + fpUplaodVideo.FileName));

此行将发生错误

System.Drawing.Image img1 = System.Drawing.Image.FromFile(Server.MapPath("~/UploadFiles/SiteUserID_" + SiteUserID + "/UploadVideo/") + fpUplaodVideo.FileName);

由于以下原因,System.Drawing.Image.FromFile将返回OutOfMemoryException

  1. 该文件没有有效的图像格式。
  2. GDI +不支持文件的像素格式。

用于Image.FromFile的MSDN文档说:

OutOfMemoryException

该文件没有有效的图像格式。

-要么-

GDI +不支持文件的像素格式。

当然,这是对OutOfMemoryException的错误和荒谬的用法,但至少已记录在案。

至于为什么抛出它,这很简单-您正在尝试将视频文件加载为图像文件。 相同的文档显示支持以下格式:

  • 骨形态发生蛋白
  • GIF
  • JPEG格式
  • PNG
  • TIFF

我认为您的“ UploadVideo”都不是。 实际上,我不确定您为什么认为这会产生缩略图。 尝试为此寻找一个特定的库。 这可能是一个不错的开始: 缩略图C#

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM