フォルダーのアクセス許可の保存に少し問題があります。それらを書いたり読んだりすることに関するいくつかのドキュメントを見つけることができました。私がやろうとしているのは、特定のユーザーのフォルダーのアクセス許可を読み取る>それを保存する>アクセス許可を変更する>インストーラープログラムが終了した後、アクセス許可を元に戻すことです。
元のフォルダーのアクセス許可を保存して元に戻す方法を除いて、すべてをダウンさせました(他の多くのコードによるもののみ)。ソフトウェアでいくつかの致命的なエラーが発生しましたが、これはそれらの多くを解決するための 1 つのステップです。すべてのヘルプは大歓迎です。
以下は、パーミッションの設定方法の例です。はい、全員が揃っていることはわかっていますが、今はテスト用です
public void setPermDir()
{
try
{
string DirectoryName = "C:\\Temp1\\";
Console.WriteLine("Adding access control entry for " + DirectoryName);
// Add the access control entry to the directory.
AddDirectorySecurity(DirectoryName, @"Everyone", FileSystemRights.FullControl, AccessControlType.Allow);
Console.WriteLine("Done.");
}
catch (Exception e)
{
Console.WriteLine(e);
}
Console.ReadLine();
}
// Adds an ACL entry on the specified directory for the specified account.
public static void AddDirectorySecurity(string FileName, string Account, FileSystemRights Rights, AccessControlType ControlType)
{
// Create a new DirectoryInfo object.
DirectoryInfo dInfo = new DirectoryInfo(FileName);
// Get a DirectorySecurity object that represents the
// current security settings.
DirectorySecurity dSecurity = dInfo.GetAccessControl();
// Add the FileSystemAccessRule to the security settings.
dSecurity.AddAccessRule(new FileSystemAccessRule(Account,
Rights,
ControlType));
// Set the new access settings.
dInfo.SetAccessControl(dSecurity);
}