制作支持win7标准用户安装的cab包 转载
番茄系统家园 · 2021-08-06 07:34:23

在近期的签名控件OCX测试过程中,碰到了此问题,以往制作的CAB都是在管理员用户下安装的,为了达到能够兼容标准用户,通过查阅网络上资料和反复测试,解决以上问题,现提供出来供大家参考,如有不妥之处,请大家进一步补充说明。
众所周知,制作OCX控件的CAB需要INF配置文件,而且CAB的最终下载和安装都是根据INF文件的配置来进行的,下面直接贴本次最终测试通过的INF文件代码:
[]
=”$$”
=2.0
[]
=
[]
=user|machine
[SignX.ocx]
file-win32-x86=thiscab
clsid={控件guid}
FileVersion=1,8,3,0
RegisterServer=yes
RedirectToHKCU=yes
以上字段的含义相信大家都基本明白,这里只说明一下如何实现支持WIN7标准用户的。
要实现标准用户成功安装,就需要使用IE8及以后版本的“No-AdminActiveX”安装模式;No-Admin安装模式字面意思就是安装不需要管理员权限,主要是为了兼容非管理员用户安装使用控件;No-AdminActiveX模式依赖与INF文件中以下几个健值:
1,InstallScope健
[Deployment]
InstallScope=user|machine
当InstallScope=user时,控件安装时只为当然用户使用,控件的注册表信息都在current_user下,这个就避免了必须管理员权限才能安装的限制。当InstallScope=user|machine时,控件安装时,如果安装的用户有管理员权限则安装为整个机器使用,否则也只会当前用户使用;
2,RedirectToHKCU健
RedirectToHKCU=yes
该健的含义就是注册表是否重定向,是否把控件在注册表local_machine和root下的注册信息重定向到current_user中;
关于No-AdminActiveX模式更详细的说明,请参考MSDN
免责声明: 凡标注转载/编译字样内容并非本站原创,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如果你觉得本文好,欢迎推荐给朋友阅读;本文链接: https://m.nndssk.com/post/24985.html。
