当UAC变为默认值时,VB6中的GetObject无法正常工作

时间:2016-08-05 20:20:55

标签: vb6 uac

我正在尝试连接已经存在的Word窗口。

设置WordApp = GetObject(,“Word.Application”)

如果关闭UAC,这可以正常工作。如果UAC变为“默认”,则会出现错误。 “ActiveX组件无法创建对象”。

在我的实验中我注意到的一件事是,如果Word以“以管理员身份运行”启动,则一切正常。不幸的是,我预计运行的盒子/登录可能没有管理员权限。

1 个答案:

答案 0 :(得分:0)

这听起来像开发人员在2006年受过教育的问题。

您希望两个进程具有相同的完整性级别。听起来好像是在运行提升的IDE中进行测试,通常应该如此。如果是这样,那么您想要自动化的过程也必须提升。

这在正常运行时不应该是一个问题,因为这两个进程通常都是在标准用户的同一级别运行。如果您需要除此之外的其他内容,那么您需要一个包含uiAccess = True的清单,并且您的代码必须经过签名并正式安装。

请参阅Windows Integrity Mechanism Design中的用户界面权限隔离(UIPI)和完整性

但是automating Office has been deprecated for a very long time