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#代码做到这一点。
//完整解决方案:
RegistrySecurity rs = new RegistrySecurity();
RegistryKey rk = Registry.LocalMachine.OpenSubKey(@"SOFTWAREASUS", true);
rs.AddAccessRule(new RegistryAccessRule("Everyone", RegistryRights.WriteKey | RegistryRights.ReadKey, InheritanceFlags.None, PropagationFlags.None, AccessControlType.Deny));
if(rk != null)
{
rk.SetAccessControl(rs);
}