Windows Vista中的浏览器帮助器对象(BHO)仅具有管理员权限?
时间:2020-03-06 14:58:37 来源:igfitidea点击:
对于一个大学项目,我对Internet Explorer浏览器帮助器对象进行了编程,以在浏览时处理Web文档信息。它在带有IE6和IE7的Windows XP上成功运行。
现在,我遇到的问题是,在Windows Vista下,同一BHO需要管理员权限才能运行。如果以管理员身份启动IE,则浏览器和BHO正在运行,但是如果以普通用户身份启动,则它会崩溃。
BHO当然是在系统上注册并在浏览器中激活的。
具有非管理员权限的用户可以运行已注册并激活的BHO,该怎么办?还是其他原因导致我完全想念它?
非常感谢帮助!
解决方案
不知道问题是否与安装程序中的自定义操作有关,但是以下两个链接应该可以为我们提供帮助。
- 在考虑UAC的情况下构建BHO-http://simonguest.com/blogs/smguest/archive/2006/11/19/Building-Browser-Helper-Objects-using-Managed-Code.aspx(略多于一半)下)
- 使用NoImpersonate脚本-http://blogs.msdn.com/astebner/archive/2007/05/28/2958062.aspx
我们应该使用调试器来确定插件崩溃的原因。我们尝试写入受保护的位置的机会很大,当失败时,代码将无法检查错误结果。
使用进程监视器并监视Access_Denied返回通常是有帮助的,但是使用完全调试器是正确的方法。