Asp.net 使用SwfDotNet时如何处理垃圾收集/释放资源
我能够读取Asp.net 使用SwfDotNet时如何处理垃圾收集/释放资源,asp.net,c#-4.0,webforms,Asp.net,C# 4.0,Webforms,我能够读取.swf文件的高度和宽度&如果它不在指定的维度内,那么我必须从服务器上删除该文件,不幸的是,它不断生成错误,因为我无法释放资源,我不确定我必须释放哪些其他资源 进程无法访问文件“C:\PROJECTS\xyz\images\banners\file.swf”,因为另一进程正在使用该文件 上述代码生成的文件与其他进程正在使用的文件相关,我无法使用IDispose方法,因此我不确定如何解决此问题。我只是使用FileUpload服务器控件在asp.net web表单上上载文件 /* Not
.swf
文件的高度和宽度&如果它不在指定的维度内,那么我必须从服务器上删除该文件,不幸的是,它不断生成错误,因为我无法释放资源,我不确定我必须释放哪些其他资源
进程无法访问文件“C:\PROJECTS\xyz\images\banners\file.swf”,因为另一进程正在使用该文件
上述代码生成的文件与其他进程正在使用的文件相关,我无法使用IDispose
方法,因此我不确定如何解决此问题。我只是使用FileUpload服务器控件在asp.net web表单上上载文件
/* Not using below case as i not able to dispose the swfReader object which can result in unnecessary memory*/
// Create a swf stream reader
SwfReader swfReader = new SwfReader(path);
// Read the completed swf file
Swf swf = swfReader.ReadSwf();
// Read only headers of file to optimize read speed
//Swf swf = swfReader.ReadSwfHeader();
int swfHeight = swf.Header.Height;
int swfWidth = swf.Header.Width;
swfReader.Close();
if ((swfHeight > int.Parse(hdnBannerHeight.Value)) || (swfWidth > int.Parse(hdnBannerWidth.Value)))
{
lblImageUploadMessage1.Text = "File cant be upload as it has invalid dimensions";
lblImageUploadMessage1.CssClass = "lblErrorMSG";
Session["bannerImage"] = null;
if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); }
}