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!!!!");
}
}
}