Windows 您是否可以在没有管理员权限的情况下在IE中安装ActiveX控件?

Windows 您是否可以在没有管理员权限的情况下在IE中安装ActiveX控件?,windows,internet-explorer,activex,Windows,Internet Explorer,Activex,我正在开发一个需要ActiveX控件才能运行的web应用程序。当用户具有管理员权限时,它可以正常安装,但在其他情况下无法加载。这是设计的吗?如果是,是否有文件记录?(最好是MSDN)复杂答案:是。用户帐户需要是提供注册库(dll)或控件(ocx)权限的组的一部分,或者需要直接分配权限 简单回答:否。只有具有安装OCX或DLL管理权限的帐户才能安装Active-X控件(默认情况下,这些帐户是管理员、域管理员或超级用户组的一部分) 编辑:我想这个问题已经改变了。。。是的,这是设计的。如果将Vista

我正在开发一个需要ActiveX控件才能运行的web应用程序。当用户具有管理员权限时,它可以正常安装,但在其他情况下无法加载。这是设计的吗?如果是,是否有文件记录?(最好是MSDN)

复杂答案:是。用户帐户需要是提供注册库(dll)或控件(ocx)权限的组的一部分,或者需要直接分配权限

简单回答:否。只有具有安装OCX或DLL管理权限的帐户才能安装Active-X控件(默认情况下,这些帐户是管理员、域管理员或超级用户组的一部分)


编辑:我想这个问题已经改变了。。。是的,这是设计的。

如果将Vista与IE8一起使用,您可以


事实上,这些答案没有一个是完全正确的;如果以每个用户为单位安装ActiveX控件,则无论用户所在的组是什么,该控件在没有管理权限的情况下都可以正常工作。基本上,这涉及到将其安装到HKEY_当前用户而不是HKEY_本地机器

根据activex控件的编写方式,这可能很容易更改,也可能很难更改;使用ATL 9非常简单,因为您只需调用一个函数:

AtlSetPerUserRegistration(perUser);

默认情况下执行此操作,以便安装插件/控件时不需要管理员权限;它也有一个(ATL 9是VS 2008)。这都是C++,所以如果你的控件是用别的东西写的,我不知道如何修复它,但是至少应该让你开始。

只是出于兴趣,你需要什么控制?我不认为在开始开发之前,我会在没有意识到复杂性的情况下构建一个需要ActiveX的应用程序。它是我们自己的内部应用程序控件。这并不完全正确;如果没有管理员访问权限的帐户设计为可在HKEY_CURRENT_用户而不是默认的HKEY_LOCAL_计算机上安装控件,则可以安装这些控件。HKEY_类_根是两者的组合,HKCU覆盖HKLM键。更多信息请参见我的答案谢谢你的花边新闻Taxilian,我没有意识到这一点+1另外供参考,我们在这样做时遇到了一些问题,漫游配置文件在注销时删除了任何每用户activex控件。