是否有一个 api 可以更改 COM 安全的访问权限?我需要将新值写入“编辑限制...”和“编辑默认值...”。这些是普通的注册表设置吗?找不到如何设置这些条目。
快速答案是是,它们是注册表设置,长答案是否,它们不是simple注册表设置。这些值是二进制的并指向 ACL 结构。为了更改这些,您需要加载、更新和保存 ACL(这需要大量代码)。这DCOMPerm 样本 http://msdn.microsoft.com/en-us/library/aa242178(VS.60).aspx在 Windows SDK 中是一个不错的起点,我已将其用作我在工作中用来处理此问题的一组类的基础(不幸的是,我无法将该代码发布到公共领域)
您可以查看MSDN 文档 http://msdn.microsoft.com/en-us/library/ms687309(VS.85).aspx用于 DCOM 密钥结构 - 涵盖计算机范围的设置。 COM 应用程序特定的设置存储在注册表中其 APPID 下的访问权限和启动权限值中。
请记住,如果操作不当,修改计算机范围设置的 ACL 可能会很快导致您的计算机无法使用。如果我没记错的话,您可以简单地删除这些值(通过 RegEdit),操作系统将恢复默认值以恢复您的计算机...但我不再 100% 确定这一点。
编辑:二进制数据实际上是一个安全描述符,但最终它是需要处理的包含的 ACL - SD 只是在解包/打包时添加了一层代码。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)