你可以在IE中安装一个ActiveX控件而无需pipe理员权限?

我正在开发一个需要ActiveX控件才能运行的web应用程序。 当用户具有pipe理员权限时安装得很好,但是否则无法加载。 这是由devise,如果是这样,这是logging在某个地方? (最好是MSDN)

其实这些答案都不是完全正确的, 如果你在每个用户的基础上安装一个ActiveX控件,那么无论用户在哪个组,它都可以正常工作,而不需要管理权限。基本上,这包括将它安装到HKEY_CURRENT_USER而不是HKEY_LOCAL_MACHINE。

取决于你的ActiveX控件是写在这可能很容易或可能很难改变; 与ATL 9这很容易,因为你只需要调用一个函数:

AtlSetPerUserRegistration(perUser); 

FireBreath在默认情况下会这样做 ,以便管理员权限不必安装插件/控件; 它也有一个老版本的ATL (ATL 9是VS 2008)的解决方法 。 这是所有的C ++,所以如果你的控件是写在别的东西我不知道如何解决它,但至少应该让你开始。

复杂的答案:是的。 该用户的帐户需要成为注册库(dll)或控件(ocx)或需要直接分配该特权的组的一部分。

简单的答案:不可以只有管​​理员才能安装OCX或DLL的帐户可以安装Active-X控件( 默认情况下这些帐户是Administrators,Domain Administrators或Power Users组的一部分)。

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