RegistrySecurity rs = new RegistrySecurity();
RegistryKey rk =
RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).
OpenSubKey("SOFTWARE\\MyApplication", true);
rs.AddAccessRule(new RegistryAccessRule("Everyone",
RegistryRights.WriteKey | RegistryRights.ReadKey | RegistryRights.Delete,
InheritanceFlags.None,
PropagationFlags.None,
AccessControlType.Allow));
我试图从注册表中为SOFTWARE下的特定文件夹的所有系统用户提供可写权限。但我无法使用C#代码执行此操作。请让我从这个修复中解脱出来。
答案 0 :(得分:3)
//完整的解决方案:
RegistrySecurity rs = new RegistrySecurity();
RegistryKey rk = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\ASUS", true);
rs.AddAccessRule(new RegistryAccessRule("Everyone", RegistryRights.WriteKey | RegistryRights.ReadKey, InheritanceFlags.None, PropagationFlags.None, AccessControlType.Deny));
if(rk != null)
{
rk.SetAccessControl(rs);
}