[英]Access to the path is denied from get assembly version of file
我创建了Web表单应用程序以上传文件(.exe),并获得文件的程序集版本,但是当我在获取版本后删除文件时,我遇到的问题是“对路径的访问被拒绝”。
代码:
protected void uploadBT_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFile)
{
try
{
/** Save file to tmp **/
string filename = FileUpload1.PostedFile.FileName;
FileUpload1.PostedFile.SaveAs(Server.MapPath("~/FilesUploaded/tmp/" + filename));
/** get assembly version **/
Assembly asb = Assembly.LoadFile(Server.MapPath("~/FilesUploaded/tmp/" + filename));
string version = asb.GetName().Version.ToString();
Directory.Delete(Server.MapPath("~/FilesUploaded/tmp"), true);
Thread.Sleep(5);
Directory.CreateDirectory(Server.MapPath("~/FilesUploaded/tmp"));
/** Save each versions **/
Directory.CreateDirectory(Server.MapPath("~/FilesUploaded/" + version));
FileUpload1.PostedFile.SaveAs(Server.MapPath("~/FilesUploaded/" + version + "/" + filename));
}
catch (Exception ex)
{
errTxt.Text = ex.Message.ToString();
}
}
}
IIS最有可能阻止.exe,您需要允许它通过MIME类型。
托管公司应该能够将文件夹的权限授予aspnet用户,因为它似乎是您的托管目录,但我可能错了。 您是否曾就此错误要求他们的支持?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.