【问题标题】:System.IO.Directory.Move(tempPath, newFolder) throws exception access deniedSystem.IO.Directory.Move(tempPath, newFolder) 抛出异常访问被拒绝
【发布时间】:2012-10-19 23:22:50
【问题描述】:

我正在尝试使用此方法将文件夹从一个目录移动到另一个目录

System.IO.Directory.Move(tempPath, newFolder);

我是计算机上的管理员,因此我应该拥有完全访问权限。我无法弄清楚为什么每两次尝试一次就会出现此异常。

Access to the path 'D:\<myDirectory>' is denied.

【问题讨论】:

  • 临时文件夹中可能有一个打开的文件?
  • 由于问题是用 asp.net-mvc-3 标记的,您是否尝试从 asp.net 应用程序执行此操作?如果是这样,执行托管进程的帐户是否有权访问这两个位置?此外,管理员仍然可以通过所述文件系统元素的安全配置拒绝目录和文件访问。
  • @Hugo :我正在从 ASP MVC 3 应用程序中执行此操作。这两个位置在另一个我可以完全控制的文件夹中
  • 对此不确定,但值得一试。您是否尝试过以管理员身份运行 VS?我以前也遇到过。
  • @RahulNomiddlenameRumalla:不行还是不行

标签: c# windows asp.net-mvc-3 rights


【解决方案1】:

仅仅因为您是管理员并不意味着您可以访问所有内容。在你不一定能访问的东西中:

  • SYSTEM 拥有但未明确允许管理员使用的文件/目录(例如 C:\System Volume Information)
  • 文件被其他进程锁定,使用“共享”设置阻止您访问

【讨论】:

  • 我检查了我正在执行此操作的目录的访问权限,并且我可以完全控制它。此外,正如我所说,这一次有效,当我再次重试时,它给出了这个异常
猜你喜欢
  • 2015-10-11
  • 2013-05-24
  • 2012-05-19
  • 2014-11-19
  • 1970-01-01
  • 2014-09-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多