简体   繁体   中英

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.

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. Have you asked their support about this error?

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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