文件访问被拒绝更改权限

时间:2013-02-07 20:09:42

标签: c# file-io .net

我正在尝试执行一个自动备份程序,该程序将文件夹复制到另一个文件夹中。非常简单的任务:

File.Copy(Source, Destination);

来源类似于C:\Users\SomeUser\MyDocuments\SavedFiles
目的地类似于D:\BackUp

但是当我运行我的程序时,我得到“访问路径C:\blabla.....访问被拒绝的错误。”

我必须更改任何类型的权限才能使用Copy方法吗?我想是的......我看了一下,但我找不到改变这样的地方。
任何想法?


更新

enter image description here

2 个答案:

答案 0 :(得分:0)

您必须假设您可能无权访问硬盘驱动器上的某些文件和文件夹。

一种解决方案是使用管理员级权限手动运行应用程序,但更容易修改清单文件,以便应用程序在运行时自动寻找管理员级别。

您可以通过向项目添加mainifest文件来执行此操作(添加新项目...)。

然后更改行

<requestedExecutionLevel level="asInvoker" uiAccess="false" />" 

<requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />" 

显然,如果要运行该程序的用户没有管理员级帐户,这可能无法解决您的问题。

答案 1 :(得分:0)

google Shadow Copy服务。这就是现成的包装如何运作。