确定注册表项的对象名称
Determine a Registry Key's Object Name
我正在尝试使用函数SetNamedSecurityInfo()为注册表项设置自由访问控制列表(DACL)。
我不确定第一个参数pObjectName
应该是这个函数,如果我设置注册表项?我也不确定的是这个字符串的格式,即,对于当前用户,我使用HKEY_CURRENT_USER
还是CURRENT_USER
?
对于注册表项,对象名称只是注册表项的路径还是其他什么?
例如:LPTSTR pObjectName = _T("HKEY_CURRENT_USER\Software\MyAppName");
// or should it be...
LPTSTR pObjectName = _T("CURRENT_USER\Software\MyAppName");
阅读SetNamedSecurityInfo()
的文档:
对于不同对象类型的字符串格式的描述,请参见SE_OBJECT_TYPE。
.
SE_REGISTRY_KEY注册表项。注册表项对象可以在本地注册表中,例如CLASSES_ROOTSomePath,也可以在远程注册表中,例如ComputerNameCLASSES_ROOTSomePath。
注册表项的名称必须使用以下字面值字符串来标识预定义的注册表项:"CLASSES_ROOT"、"CURRENT_USER"、"MACHINE"answers"USERS"。
所以你的问题的答案是:
LPTSTR pObjectName = _T("CURRENT_USER\Software\MyAppName");
相关文章:
- 有没有任务栏API可以立即应用注册表更改
- 检查注册表项是否链接到(或副本)另一个注册表项
- 禁用地址共享注册表不起作用
- 如何从注册表项中提取配置单元和注册表名称
- 注册表正在设置 1 个字符
- 清理"QSettings"注册表项的最佳方法(Windows上的Qt 5)
- 在 c++ 中编辑注册表项
- 某些进程的注册表限制
- 在编译时生成某种子类/类型注册表?
- 如何测试注册表项是否存在?
- 唯一命名对象的表
- 注册表-获取值(而不是键)上次更改的时间和键创建日期
- 从注册表中检索已注销用户的 sid
- 如何正确检查 c++ 是否存在注册表项?
- 如何在不使用任何数据库的情况下制作动态注册表单?
- 强制资源管理器重新加载注册表值
- 将shared_ptr与通用注册表或共享对象存储一起使用.或不
- COM 对象版本号以及如何通过 Win 注册表处理它
- 确定注册表项的对象名称
- 具有自动清除功能的中央注册表中对象的句柄