在c++中使用RegSetKeySecurity更改注册表项权限
Changing the registry key permission using RegSetKeySecurity in C++
我正在写一个注册表清理应用程序。我需要删除一些安全的注册表项值,但由于他们的访问权限,我的删除操作失败。
我了解到注册表访问权限可以使用RegSetKeySecurity方法删除。
但是我不确定如何正确设置SECURITY_INFORMATION和PSECURITY_DESCRIPTOR参数来将密钥的安全性设置为用户级别
如果有人能指导我如何前进,我将不胜感激。
BOOL CreateMyDACL(SECURITY_ATTRIBUTES * pSA, HKEY hKey_CM_DACL)
{
TCHAR * szSD = TEXT("D:")
TEXT("(A;OICI;GA;;;WD)")
TEXT("(A;OICI;GA;;;SY)");
ConvertStringSecurityDescriptorToSecurityDescriptor(
szSD,
SDDL_REVISION_1,
&(pSA->lpSecurityDescriptor),
NULL);
RegSetKeySecurity( hKey_CM_DACL, DACL_SECURITY_INFORMATION, pSA->lpSecurityDescriptor );
}
相关文章:
- 有没有任务栏API可以立即应用注册表更改
- 检查注册表项是否链接到(或副本)另一个注册表项
- 禁用地址共享注册表不起作用
- 如何从注册表项中提取配置单元和注册表名称
- 注册表正在设置 1 个字符
- 清理"QSettings"注册表项的最佳方法(Windows上的Qt 5)
- 在 c++ 中编辑注册表项
- 某些进程的注册表限制
- 在编译时生成某种子类/类型注册表?
- 如何测试注册表项是否存在?
- 注册表-获取值(而不是键)上次更改的时间和键创建日期
- 从注册表中检索已注销用户的 sid
- 如何正确检查 c++ 是否存在注册表项?
- 如何在不使用任何数据库的情况下制作动态注册表单?
- 强制资源管理器重新加载注册表值
- 以编程方式锁定注册表项以避免并发问题
- 如何应用注册表模式使"select class depend on input"遵守开放封闭原则?
- 如何恢复注册表项的有效权限?C++
- Internet Explorer BHO,写入注册表和管理权限
- 在c++中使用RegSetKeySecurity更改注册表项权限