在部署active directory时,无法在Windows 8(32/64位)中访问注册表



这是在windows 8 pc中删除打印机驱动程序的问题。

我们的应用程序在UI级别部署中运行良好,我们已成功安装和卸载。

我们已经从UI级别和PUSH部署在Windows 8(32和64位)中测试了我们的应用程序。

但在PUSH(Active Directory部署)中,"OpenPrinter()"函数无法获取请求的打印机驱动程序的句柄。然后删除打印机也失败了。

我们已经验证了该函数正在按预期获得perameters。但它失败了。

由于该问题仅在Windows 8中发生。

服务器是Windows 2003和Windows 2008 r2,并基于每台机器进行部署。

应用程序在VC++(VS 2008)中开发,并与InstallShield12打包。

在我们的调查中,我们发现"Openprinter()"函数无法访问Registry,并且它无法返回句柄。

当我们从PUSH安装应用程序时,它是用SYSTEM帐户安装的。我们已经对此进行了验证。

在Windows 8 PC中使用注册表有任何限制吗?或者我们需要在Windows 8 PC中修复/设置/配置任何设置吗?或者是否有禁止访问SYSTEM帐户注册表的内容?

请帮我解决这个问题。

提前谢谢。


注册表在Windows8(32/64位)中不可访问,而active directory部署

最终问题解决了
主要原因是openprinter API依赖注册表来获取请求打印机的句柄
调用API时,注册表不可用。
当我们等待完成2分钟时,API返回句柄
因此,我的PUSH卸载完成时没有挂起。现在我的问题解决了
但这是Windows 8的限制。

最新更新