简体   繁体   English

获取文件的程序集版本会拒绝访问路径

[英]Access to the path is denied from get assembly version of file

I create web form application to upload file (.exe) and i get assembly version of file but i have a problem is 'access to the path is denied' when i am deleting file after get version. 我创建了Web表单应用程序以上传文件(.exe),并获得文件的程序集版本,但是当我在获取版本后删除文件时,我遇到的问题是“对路径的访问被拒绝”。

Code : 代码:

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类型。

The hosting company should be able to grant the permissions to that folder to aspnet user since it appears that is your hosted directory but I could be wrong. 托管公司应该能够将文件夹的权限授予aspnet用户,因为它似乎是您的托管目录,但我可能错了。 Have you asked their support about this error? 您是否曾就此错误要求他们的支持?

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

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