我已经制作了一个ActiveX控件,并且已经制作了它的.cab文件,用于在使用Internet Explorer的客户端计算机上进行自动安装。它在Windows XP中工作正常, Windows Vista和Windows 7的安装被UAC(用户帐户控制)阻止,当我禁用它时,所有的东西都正常工作......我用开发环境证书签署了我的.cab文件...什么是方式来解决这个问题..我不想告诉用户禁用他们的UAC模块...Windows Vista和7上的.cab文件(ActiveX)安装问题
回答
这很可能是因为您试图在HKEY_LOCAL_MACHINE中注册控件,而这是ATL中的默认设置。如果您将控件更改为在HKEY_CURRENT_USER中注册(当启用UAC并且您未升级时,注册表的唯一部分可访问),则应该没问题。
如果你正在使用VS2008和ATL,你可以通过调用做到这一点:
AtlSetPerUserRegistration(perUser);
在旧版本中,你需要更多一点的黑客攻击的。下面是我们用来解决FireBreath问题的一类,跨浏览器的插件框架,我帮助维护:
http://code.google.com/p/firebreath/source/browse/src/ActiveXPlugin/axutil.cpp http://code.google.com/p/firebreath/source/browse/src/ActiveXPlugin/axutil.h
,那么你就必须把:FbPerUserRegistration perUser(true);
在你的DllRegisterServer和DllUnregisterServer入口点。
或者(我不使用.cab安装,所以我没有尝试过),但是msdn上有一个文档讨论了如何修改.cab安装来执行此操作,该操作不需要修改你的控制:
http://msdn.microsoft.com/en-us/library/dd433049%28VS.85%29.aspx
另一个要点,你可以使用Process Monitor来查看正在使用在您注册控制哪些键;它需要一些练习摆弄过滤器,但是一旦你掌握了它,这并不坏。如果您正在写入HKCR(HKEY_CLASSES_ROOT),默认情况下将把东西放在HKEY_LOCAL_MACHINE/Software/Classes中。你想做什么(以避免没有管理员权限的问题)是把键放在HKEY_CURRENT_USER/Software/Classes中。
希望有帮助
- 1. 帮助ActiveX安装?合并模块 - Windows Vista和Windows 7
- 2. 问题:Windows 7上的Fluentd gem安装
- 3. Windows 7上Playframework 2.1.0的安装问题
- 4. Cordova安装问题:在Windows 7上
- 5. 为IE浏览器的ActiveX安装创建CAB文件
- 6. Crystal Web Viewer ActiveX将不会安装在IE8和Windows 7上
- 7. 在Vista上安装QT的问题
- 8. 使用.NET安装程序的Windows Vista上的文件安全
- 9. 无法安装cab文件
- 10. 如何在Vista上安装Delphi 7
- 11. Windows XP和Windows Vista上的IE 6/7
- 12. 在Windows 7中安装cython的问题
- 13. WCELOAD未安装我的CAB文件
- 14. 在Windows CE上安装cab文件时出错
- 15. 在Windows上安装服务(VISTA/XP/7)使用Inno Setup的
- 16. mod_wsgi windows 7 64位安装问题
- 17. 在Vista Business和UAC问题上安装Visual C#2008 Express
- 18. 问题在Windows上安装
- 19. 问题在Windows上安装
- 20. 安装visual studio 2010的Oracle 10g和Vista上的问题
- 21. TeeChart ActiveX 7问题
- 22. 在Windows CE上安装CAB时,安装DLL不起作用
- 23. Windows XP和Vista上的MediaElement vs 7
- 24. 以.NET编程安装CAB文件CF
- 25. 合并CAB安装文件为两个
- 26. Qliksense在我的Windows 7上的安装问题
- 27. 在IE之外安装.cab文件
- 28. 在Windows XP,Vista和7上安装了什么版本的.NET框架?
- 29. 在Windows 7上安装ARTOOLKIT
- 30. 在Windows 7上安装GitPython
也许发布您的清单,以便我们可以查找错误? – 2009-11-20 19:43:27
你是在询问有关.inf文件的问题,你的意思是什么? – 2009-11-23 08:11:27
我注意到一件事,当我右键单击Internet Explorer并单击以管理员身份运行时,每件事情都很好...... – 2009-11-23 10:38:12