我正在尝试使用C#将文件复制到Windows 7中的目录C:\Windows\Win32
,但操作系统不允许我这样做。我已经编写了一个解决问题的程序,但它在我设置访问控制的行上引发了异常:di.SetAccessControl(ds)
。
异常消息是:
“试图执行未经授权的操作。”
我的代码:
using System.IO;
using System.Security.AccessControl;
using System.Management;
using System.Management.Instrumentation;
namespace MyProgram
{
public class Program
{
public static void Main(string[] args)
{
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(@"C:\Windows\Win32");
FileSystemAccessRule fsar = new FileSystemAccessRule("Users", FileSystemRights.FullControl, AccessControlType.Allow);
DirectorySecurity ds = null;
if (!di.Exists)
{
System.IO.Directory.CreateDirectory(@"C:\Windows\Win32");
}
ds = di.GetAccessControl();
ds.AddAccessRule(fsar);
di.SetAccessControl(ds);
File.Copy(@"C:\Users\Public\Pictures\Sample Pictures\Desert.jpg", @"C:\Windows\Win32\Desert.jpg");
Console.WriteLine("successfully copy!!!!");
}
}
}