1

我正在尝试C:\Windows\Win32使用 C# 将文件复制到 Windows 7 中的目录,但操作系统不允许我这样做。我已经编写了一个程序来解决这个问题,但是它在我设置访问控制的行上抛出了一个异常: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!!!!");
        }
    }
}
4

0 回答 0