微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

IE如何找到已注册的ActiveX控件

如何解决IE如何找到已注册的ActiveX控件

我正在用qt构建一个activex控件。如果我将其注册control-name.exe /regserver,则IE11可以加载它。然后将寄存器条目写入HKEY_CLASSES_ROOTHKEY_LOCAL_MACHINE。但是此Activex控件的用户没有管理员权限,因此我正努力在HKEY_CURRENT_USER级别上注册此com服务器。

我尝试将CLSID路径中HKEY_LOCAL_MACHINE下的条目导出到reg文件,并将HKEY_LOCAL_MACHINE替换为HKEY_CURRENT_USER,然后将该reg文件重新导入(并删除具有相同CLSID的其他条目)。但是IE11找不到Activex控件。这是否意味着IE11不会在CLSID中寻找HKEY_CURRENT_USER,而只会寻找HKEY_LOCAL_MACHINEHKEY_CLASSES_ROOT

我已经阅读了一些文章文章,但是仍然不确定是否可以实现这种想法,例如“ 注册没有IE加载权限的com服务器”。例如,如果我找到了一种将每个注册表放入HKEY_CURRENT_USER方法(仍在运行),则IE可以加载我的activex控件吗?

有帮助吗?预先感谢。

更新: 这是我进行测试的方式:

  1. 管理员用户身份运行control-name.exe /regserver
  2. 注册表导出到.reg文件,然后删除这些注册表。
  3. HKEY_CLASSES_ROOT HKEY_LOCAL_MACHINE 更改为HKEY_CURRENT_USER
  4. 使用没有管理员权限的用户登录,然后双击这些.reg文件

我用RegCool搜索注册表,发现注册表都在HKEY_CURRENT_USER/S-1-00.../...下。 (S-1-00...一个数字序列。

解决方法

我建议您检查用户帐户是否有权访问您要尝试以管理员身份安装控件的文件夹?如果不是,则出于测试目的,尝试授予权限,并查看它是否对用户有效。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。