C#删除具有完全权限的DLL文件获取未经授权的异常

本文关键字:获取 文件 异常 授权 DLL 权限 删除 | 更新日期: 2023-09-27 18:21:49

我正试图从destBackUpFolder中删除所有文件,结果是从文件夹中删除了除1个dll文件外的所有文件,我收到一个未经授权的异常对dll文件的访问被拒绝。我尝试过从网络上提出建议,将文件属性设置为正常,逐个文件删除,检查我的权限并确保我的权限被允许删除文件,但所有这些方法都不起作用,为什么我的权限设置为完全控制,却会出现未经授权的异常?仅供参考,我正在使用TeamFoundationServer进行开发版本控制,这里的问题与我的TFS有关吗?提前谢谢。

try
{
    DirectoryInfo folderToBeDelete = new DirectoryInfo(destBackUpFolder);
    folderToBeDelete.Delete(true);
    if (Directory.Exists(backupFolder))
    {
        Directory.CreateDirectory(destBackUpFolder);
        result = CopyFileAndFolder(backupFolder, destBackUpFolder);
        if (result)
        {
            ErrorMsg = "Copy process Failed,Your File has rolled back to previous version";
            IsErrorDetected = true;
        }
    }
}
catch (Exception)
{
    ErrorMsg = "Error during roll up process";
    IsErrorDetected = true;
}
    //block of code where i trying to get my version number of the dll 
      Assembly _assembly = Assembly.LoadFrom(ConfigurationManager.AppSettings["DllPathForBackUp"]);
        Version versionNumber = _assembly.GetName().Version;
        completeVersionNumber = versionNumber.Major + "." + versionNumber.Minor + "." + versionNumber.Build + "." + versionNumber.Revision;   

C#删除具有完全权限的DLL文件获取未经授权的异常

当我用将dll加载到程序中时,我正在使用dll

 Assembly _assembly = Assembly.LoadFrom(ConfigurationManager.AppSettings["DllPathForBackUp"]);

我把这个代码改成

FileVersionInfo.GetVersionInfo(ConfigurationManager.AppSettings["DllPathForBackUp"]).FileVersion;

现在我不必将dll加载到程序中并得到错误,感谢@Darren Gourley,谢谢!