当前位置: 首页 > news >正文

VS2008 ACtivex 制作CAB带 Vcredist_x86.exe 方案

自己写的 OCX或 ACTIVEX需要注册,如果是VS05或VS08开发的,还需要安装相应 的发行包才行
比如;08就需要安装 vcredist08.exe(08); 这个在微软上找或自己的VS安装包中也可以找到

来说说关键的要点;用CAB

需要把我们的开发的OCX和相关DLL打到CAB,同时还要确保客户机上安装 vcredist.exe否则,即使控件安装上了也使用不了的
CAB工具下载http://download.microsoft.com/download/platformsdk/cab/2.0/w98nt42kmexp/en-us/cabsdk.exe
下载后解压到C:\CAB, 然后进CMD, 切换当前路径为 c:\CAB ,操作见下吧

1, cabarc.exe -s 6144 N X.CAB X.ocx X.inf A.dll
意思是: -s 设置大小,6144表示64K, 这个不管它吧
N 表示要创建一个CAB包;
X.CAB 就是生成 的CAB包文件名了
X.OCX即我们的开发的控件文件名了,
X.inf 就是CAB的安装内容,这个有麻烦,放后面说它
A.dll就是我们的控件需要用到的DLL文件,如果有其它的还需要也加在,在后面加空格
一 一加上吧;

2、X.inf 内容
;//下面这三行,照抄就行,主要是版本信息,非特殊不要更改,直接照写就行
[version]
signature="$CHICAGO$"
AdvancedINF=2.0

;//这就是要安装的文件了,包括控件和相关文件
[Add.Code]
X.OCX = X.OCX
A.DLL = A.DLL
;//上面两个是控件所用的

;//下面这行是另外增加的,主要是安装VC发行包(vcredist_x86.exe就是发行包的安装名,见后)
vcredist_x86.exe=vcredist_x86.exe

[X.OCX]
;//指定O.ocx 是从CAB包里获取
file-win32-x86=thiscab

;//x.ocx 的CLASSID信息
clsid={1D73A88F-8621-498F-B7CD-F6485620F3AA}

;//x.ocx文件版本; (就是文件属性里面那个文件版本号)
FileVersion=1,0,0,1

;//是否为自动注册,一般都是需要注册的哟
RegisterServer=yes

[A.DLL]
file-win32-x86=thiscab
;同上了,也可加上版信息
;//
FileVersion = 1,1,1,1



;//这里注意了,发行包安装的信息
[vcredist_x86.exe]
fileVersion=9,0,30729,17
hook=InstallerHook
;//这项并没有设置file-win32-x86的值,因为它并不在CAB里面,这里设置了一HOOK,让HOOK
;//来处理


//发行包的安装来源
[InstallerHook]
;//这里安装默认是在同X.CAB的目录,如果是在网站,可以更改为URL路径
;//如:http://www.x.com/vcredist.cab

file-win32-x86=VCredist.CAB

;//这里就是让CAB自动解压过后,运行CAB包里面的 vcredist_x86.exe
run=%EXTRACT_DIR%\vcredist_x86.exe

配置完毕

这里需要两个CAB,一个是我们的控件 X.cab 另一个是发行包的 VCRedist.CAB 里面只有一个文件 vcredist_x86.cab

( cabarc.exe N VCRedist.cab vcredist_x86.exe ) 运行此命令需设置全路径或切换vcredist_x86.exe所在目录再运行命令

好了,在网页里面,设置控件的 codebase="X.CAB" 安装时会自动下载 vcredist.cab并且安装,但这个是有界面操作的,就是安装的时候需要用户点下一步什么的,并不是安静安装模式。。


另参见MSDN:http://msdn.microsoft.com/en-us/library/aa751974%28VS.85%29.aspx#cabdl

微软的CAB包制作方法:

http://msdn.microsoft.com/en-us/library/aa751974%28VS.85%29.aspx#cabdl

http://www.xdnf.cn/news/799633.html

相关文章:

  • 常见无法登陆MSN原因
  • 关于优质博客聚合的一点思考
  • 公交车查询系统软件测试,公交APP评测:谁是最好用的公交线路查询软件?
  • 郭涛 黄渤 田原09贺岁大片《高兴》DVD修正版
  • Lesson40 FIFO的配置与使用
  • 从Win32程序中的主函数中获取命令行参数 _twinmain
  • InputFormatOutputFormat
  • [正则表达式]文本框输入内容控制=限制仅仅只给输入数字;中文;英文;符号。
  • android一些细节问题
  • Windows XP任务计划不能执行的解决的方法
  • BigWorld
  • DOTA系列 食尸鬼(小狗)攻略
  • 一份较详细的MS服务
  • CheckBox复选框
  • 关于自己项目(听书系统)的简介
  • Windows Media Player 播放.WMV文件破解许可证
  • SID310S/D/Q-10MHz, 低噪声, 轨至轨, CMOS 运算放大器替代SGM722
  • Windows新版算号器技术原理
  • 柏睿网络-建设机房的必要性
  • 什么是Google PR值? 如何提高PR值
  • Bitmap recycle()
  • Linux操作系统各版本ISO镜像下载(包括oracle linux\redhat\centos\ubuntu\debian等)
  • 智能影视站系统 光线 CMS1.5 正式版
  • ArrayList的遍历方式
  • 输送带的设计
  • Java中的日志记录
  • qvod(快播)电影批量下载器(轻松下载连续剧)
  • 【2025RAG最新进展】
  • 卡巴斯基KAV/KIS 6.0/7.0 授权许可文件永久免费更新方法
  • 计算机组中电脑无法访问,【工作组计算机无法访问】解决方法