2011-12-13 44 views
1

访问WMI使用DCOM需要用户有权限:与J-互操作注册表对象设置权限

HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes下\ CLSID {76A64158-CB41-11D1-8B02-00600806D9B6}

不幸的是,Windows 7和Server 2008具有此设置,因此Administrators组没有完全控制! TrustedInstaller是所有者并拥有完全控制权。

我需要通过J-互操作做到这一点的注册表对象和所有子对象(以管理员组) 的

取得所有权,我相信这会自动为完全控制权限秒。

任何帮助,将大规模赞赏

+0

嗨,据我所知这是不可能的,你只能手动改变这一点。 TrustedInstaller是Windows安全系统的一部分。我试图通过一个安装程序来改变这个,它应该改变注册表项并为j-interp配置客户端也没有成功。 –

+0

感谢提示Bjorn。如果你把它变成一个答案,我会投它一个点。 – codeplumber

回答

0

我在一个纲领性的解决了这个问题很感兴趣。到目前为止,我只能通过登录到所需的系统并右键单击注册表中的“权限”来手动执行此操作。

这些链接查找相关:

对于第二个环节,响应表明,微软认为一些注册表项应该是 “保护”由TrustedInstaller用户拥有,其他则不是。在这种情况下,我想知道是否没有其他合法的方式让WMI远程工作。

+0

我无法让j-interop来做到这一点。所以我实现了一个C++ WIndows控制台应用程序来获取2个注册表项的所有权。让我知道如果你有兴趣... – codeplumber

+0

嗨,我对控制台应用感兴趣,这也可以解决我的问题来创建一个安装程序;-)。谢谢 –

+0

@ codeplumer,你有解决方案吗?我遇到了同样的问题,使用j-interop监控Win7。我知道JOCAB确实为此工作,但它在Linux下无法工作。 –

0

我不认为你可以通过j-interop来做到这一点。可以通过将注册表文件的所有者更改为管理员或分布式COM用户或性能监视器用户组,然后将完全控制或读取权限添加到该文件夹​​上的管理员和用户组。