CAB包制作与手动安装
Cab打包过程
一、工具软件要在Wince安装程序,则需要制作*.cab安装包。
制作*.cab安装包,需要专门的制作工具软件,最常用的也是用得最多的是WinCE CAB Manager二、制作及安装过程第一步:先制作.inf文件要制作.cab安装包,你只要写一个.inf文件,也可以用的文本编辑工具制作,还有准备好你要安装到PPC的各个文件、程序。
第二步:生成CAB包只要在WinCE CAB Manager中打开你的INF文件,WinCE CAB Manager会根据你的这个INF文件来生成*.CAB文件。
你只需要把它保存起来就行了第四步:连接手机通过USB连接PC,运行*.ARM.CAB文件三、制作INF文件说明第一个字段[V ersion]中Provider大家可以随便改,其他两个参数就不要去碰了。
第二个字段[CEStings]CompanyName=""AppName="PPC"InstallDir=\UserData\myoa说明:CompanyName是公司名字,可以任意修改。
AppName是应用程序名字,可以任意修改。
InstallDir是应用程序安装的Wince终端的路径,可以任意修改。
第三个字段[CEDevice]CEDevice字段是程序所对应的设备平台,这个大家就不用去管它了。
第四个字段[SourceDisksNames]是指定源文件程序所在的磁盘路径。
1=,"cab",,"D:\oasourcedir\programe\"可以修改"D:\oasourcedir\programe\"来指定源文件所在路径,也就是要制作安装盘的*.exe等文件路径,其它的都不要修改了。
第五个字段[SourceDisksFiles]就是大家要打包的源文件清单,后面的=1就表示文件的路径,也就是[SourceDisksNames]中的1。
通俗易懂地了解CAB
CAB安装时一般会在“开始”菜单\程序 里面产生快捷方式。有些CAB适合于老的系统安装,这个时候只要在出现继续安装对话框的时候点击“是”,就可以了。但是对于某些不一系统的,比如PPC用PsPC的CAB,请最好不要安装,免的系统受到损害。
获得CAB安装包主要有以下几种办法:
一、从网上直接下载,网上有提供CAB包的。
----------
说明一下,其实通过PC同步给PPC安装软件其实就是通过同步方式把CAB包传输给PPC然后在PPC端自动运行安装。
二、通过安装程序提取
有些软件的安装程序就是一个Zip或者RAR自解压程序,解压倒临时目录后,执行PC端安装程序,然后同步安装。这个时候只要在安装程序上右键单击,找到有没有解压缩的选项,然后把这个压缩包释放出来。在释放出来后的文件里面,应该有一个PC端安装程序,几个CAB文件,必须选择一个适合你机器的CAB包才合适。
XScale 同SARM
Hitachi SH3 *.*.SH3.cab *.*.10003.cab
MIPS *.*.MIPS.cab *.*.4000.cab
三、通过安装后提取
这几个方法有残留文件,并先不要与PPC建立同步连接,
方法一是:
执行程序的安装程序,然后按提示一步一步操作,直到安装完毕,并出现“下次与移动设备连接时再安装”的对话框。
再到X:\Program Files\Microsoft ActiveSync\[你安装的程序名] (X是你安装ASync的盘符)
* 如何安装CAB:
CAB安装很方便,不需要任何外接软件,只需要把CAB拷贝到PPC中,然后打开此CAB,即可用系统自带的安装程序自动安装CAB,它的不足是,不能选择安装路径(只有WM2003适用),而且会自动删除该CAB文件。这时我们就需要第三方工具,推荐CABInstl,SK出品的,最新版本为1.04汉化版。该软件在安装时还有一个提示,就是确定你是否安装到这个目录的提示,当然如果觉得烦人也可以取消。把它关联上CAB后,双击CAB文件就可以自动打开它了。它可以选择安装路径和不删除CAB,非常方便。
CAB-90操作指南
机器的机械调整
标 记 传 感 器 的 设 定
薄 膜 对 齐 度 的 调 整
中 封 张 力 的 调 整
传 送 带 宽 度 的 调 整
制 带 器 高 度 的 调 节
制 带 器 宽 度 的 调 节
机器的制带器宽度调整
制带器宽 度刻度
制带器宽度 的调节轮
根据产品 的宽度调 节制带器 的宽度, 一般制带 器的宽度 应略大于 产品的宽 度10mm 以内,以 方便产品 在制带器 中顺利通 过
维 修 保 养 画 面
各 种 调 整 画 面
温 度 画 面
生 产 画 面
初 期 画 面
初期开机画面
生产画面
打码机开关
标记开关
速度调节
填充位置调 整 切断位置调 整
温度控制画面
各种调整画面
维修保养画面
机器常见问题及对策
题标 及记 对传 策感 器 输 出 不 对 问
封 策头 中 跑 口 封 封 膜 封 出 不 问 不 现 美 题 住 褶 观 及 问 皱 问 对 题 问 题 策 及 题 及 对 及 对 策 对 策
包装袋中封 的美观度主 要靠此轮调 节实现,在 机器运行中 可适当的加 强或减弱中 封张力,让 中封美观度 大道最佳
中封薄膜对齐调整
薄膜的前 后可通过 此轮调节
如果包装 出的成品 中封里外 薄膜不对 其,可通 过此轮将 整个薄膜 卷往里或 往外做细 微的调整
机器标记传感器的设定
机器的人机画面操作
中封不美观问题及对策
1.如中封封纹不美观,有明显拉伸和多层封口问题,请调整 中封张力轮,将中封张力调弱 2.如中封封纹明显有聚积影响美观度,请将中封张力往强调 整 3.请设置合适的温度
ActiveX控件打包CAB详细步骤
ActiveX控件打包CAB详细步骤[背景]做过ActiveX控件的朋友都知道,要想把自己做的ActiveX控件功能放在自己的网页上使用,那么用户在客户端就必须进行本地的注册,也就是说用户得首先要把该ActiveX控件(XXX.ocx)放在本机的%system%/system32下,然后运行DOS工具里面运行regsvr32 XXX.ocx命令进行注册。
但如果真是这么去做的话,那么代表着你处于危险之中了,因为您是通过让用户自己去部署设置环境来达到你的目的,这就失去软件项目本身所存在的价值。
那么面对这种情况,我们应该如何解决呢?聪明的你一定会很快就想到,我们可以使用户在客户端自动下载安装该ActiveX控件,这样一来即可以实现我们所想要的功能,又不需要用户自己去部署设置环境,这岂不是一举两得。
[必备条件]一、用于将ActiveX控件进行打包并加数据鉴名的工具集:Cabarc.exe 将ocx打包成cabCert2spc.exe 将cer格式证书转换成spc格式证书,即PKCS #7证书Certmgr.exe 是管理证书用的Chktrust.exe 检查签署证书后的ocx是否正确Makecat.exeMakecert.exe 制作cer格式的证书,即X.509证书,同时可以创建私钥和公钥Makectl.exeSigncode.exe 将证书签署到ocx上去二、用于进行打包用的ocx控件printHKB.ocx。
三、用于查看ocx控件的工具OleView.Exe、IViewers.Dll[制作过程]一、环境设置1、工具集目录如下:2、设置系统环境变量,右键单击“我的电脑”à选择“属性”à选择“高级”选项卡,打开如图所示的系统属性面版块:3、在系统属性版块里单击“环境变量(N)”按钮,打开图:4、选择“系统变量(S)”里的“Path”变量,双击之打开“编辑系统变量”对话框,如图所示,然后在“变量值(V)”里加入“;E:\makeCAB”:二、将用于打包的OCX控件放在 E:\dll 目录下(本文档使用名为 printHKB.ocx 的控件来进行介绍),如图5所示,其中printHKB.ocx 是本文档进行操作的控件对象,而BCLW32.DLL、WinPort.dll、Winpplb.dll 这三个文件通常是进行打包时一并打包的文件,但不是 必须(推荐一起打包),其可在系统中的system32目录下找到,请自行准备。
cab打包及部署
打包智能设备解决方案以便进行部署(vs2005)本演练演示如何使用 Visual Studio 2005 将应用程序及其资源打包到一个CAB 文件中,以便可以将它部署到最终用户的智能设备上。
本演练演示如何执行下列操作:∙将一个 CAB 项目添加到解决方案中。
∙更改产品名称。
∙更改输出路径。
∙用应用程序的主输出填充 CAB 文件。
∙在必要时添加依赖项。
∙创建应用程序的快捷方式。
∙编辑注册表项。
先决条件一个现有的智能设备解决方案。
对于本打包演练,可以考虑创建并生成一个简单的项目,例如,演练:简单的hello world程序项目。
安装 CAB 项目为解决方案添加智能设备 CAB 项目1.打开现有的智能设备项目,并确保“Solution Explorer”可见。
2.在“File”菜单上指向“Add”,然后单击“new Project”。
出现“Add new Project”对话框。
3.在左侧的“Project types”窗格中展开“Other Project Types”节点,再单击“Setup and Deployment”。
4.在右侧的“Templates”窗格下选择“Smart Device CAB Project”(智能设备 CAB 项目)。
这是唯一可用于智能设备的 CAB 项目类型。
其他项目类型仅用于桌面解决方案。
5.在“Name”框中,键入CABProject,然后单击“OK”。
此 CAB 项目即会添加到您的解决方案,并显示在“Solution Explorer”中。
现在显示“File System”的两个窗格。
自定义 CAB 项目更改产品名称和其他项目属性1.在“Solution Explorer”中选择“CABProject”(如果尚未选定)。
2.打开“属性”窗口。
3.在属性网格的“ProductName”字段中,将值更改为“MyProduct”。
“ProductName”属性的值决定了在文件夹名称和“添加或删除程序”对话框中为应用程序显示的名称。
如何创建微软SFXCAB风格安装包
如何创建微软SFXCAB风格安装包一、总体思路总体思路如下:1、利用十六进制编辑工具提取自解压模块CAB.SFX2、利用CAB压缩工具压缩更新包文件为FILES.CAB3、使用COPY命令合并CAB.SFX和FILES.CAB4、利用十六进制编辑工具设置自解压后运行的程序二、(实例)IE8-WINXP安装包制作详解1、提取自解压模块CAB.SFX(1)使用十六进制编辑工具(UltraEdit或WinHex等)打开IE8安装文件IE8-WindowsXP-x86-CHS.exe(2)搜索ASCII字符串MSCF,会搜索到3个匹配项目,转到最后一个MSCF所在地址(MSCF前有PADDING字符串)。
(3)删除MSCF及之后的所有内容(MSCF也要删除),将处理后的文件另存为CAB.SFX(4)校验自解压模块大小是否和原安装包一致,IE8使用的SFXCAB版本为6.3.15.0(5)破解CAB.SFXCAB.SFX需要破解后才能使用,否则制作的安装包程序会提示无效的应用程序。
破解方法如下:使用十六进制编辑器打开CAB.SFX,搜索ASCII字符串rsrc,找到rsrc后第15个字节,将原值01修改为00。
(6)压缩更新文件利用工具MCab.exe将更新文件(本例文件位于MyIE8目录下)压缩成IE8.CAB。
(7)合并SFX和CAB文件利用命令行Copy /b CAB.SFX+IE8.CAB MyIE8.EXE合并文件生成EXE安装包。
(8)修改自解压后运行文件利用十六进制编辑器打开MyIE8.EXE,会发现压缩包内的每个文件前都有标志位20 00,需要将解压后运行的文件前的标志位置为60 00即可实现解压后启动。
IE8安装需要启动update.exe,搜索ASCII字符串update.exe,将文件前的标志位设成60 00。
(9)(高级内容)IE8集成最新补丁的处理更新Update.inf让安装程序可以从Update.exe运行,同时集成补丁。
新手教程WM PPC手机CAB安装版和绿色版软件安装详细方法
新手教程-WM PPC手机CAB安装版和绿色版软件安装详细方法一、CAB格式安装版软件的安装方法:“.cab”是PPC手机上使用的一种安装程序格式,类似PC上的.exe格式是一种安装包,在PPC上用于安装软件使用,在PC上是不可以使用的。
如果电脑上装了WinRAR解压缩软件,CAB文件看起来跟压缩的文件一样,所以要先看后缀名是什么,要不CAB文件解压后,得到的是一些_setup.xml和带有001、002这种不能使用的文件的东西。
有些网友运行_setup.xml提示安装不成功就是这个原因。
如何识别是.rar文件还是.cab文件:打开任一文件夹,点击“工具/文件夹选项/查看”,把“隐藏已知文件类型的扩展名”复选框不要钩选,即可看到文件的后缀。
安装过程中会出现安装确认与否提示和安装位置的选择,一般都装到SD卡里。
安装完成后,如果CAB软件针对WM5以前版本会有相关提示,如果CAB软件在WM5下使用没有问题,只出现安装成功提示。
进开始\设置\系统\删除程序,可以在软件不需要的时候删除安装的程序。
二、EXE格式绿色版软件的安装这种软件是最正规的软件,类似于电脑上的软件,跟大部分软件的安装方法近似。
(1)通过ActiveSync联机(2)找到安装(.exe)文件,然后运行这个exe可执行文件。
电脑就会提示你如何操作安装,然后会提示你按照手机的提示接着安装(基本上只要按“下一步”就OK了)。
(3)安装的时候有一个询问框,问你是否要安装到默认的路径(默认路径是指主内存,一般安装在/Windows和/Program File文件夹中),如果你不想装到本来就很有限的RAM里,你可以选“否”,有些软件必须装在主内存,如一些系统管理软件,和一些输入法,在软件的说明中会告诉你,大部分软件都可以安装在存储卡中。
安装后,如果是在手机上,那程序就在\Storage\Program Files里面,如果是卡上,那就是\Storage Card\Program Files里面),在完成手机的操作后,在开始菜单里的就能找到该软件的快捷方式。
CAB文件制作全攻略
特别注意,最后一个参数,必须是inf文件的全路径,不要用相对路径。
inf文件中的项目都是大小写不敏感的。
二、服务
===============
(注意,0和1只能用于驱动程序)
FileList1=10 ;安装到Windows目录
[DefaultInstall]
Copyfiles=FileList,FileList1
相同的节的作用与上一例类似,请注意新出现的节[FileList],这是我自定义的节名,它表示了一个文件组,[FileList1]也类似。在节[DestinationDirs]中需定义每个文件组复制到的目录(各个常量的意义见附表)。Copyfiles指明了需要进行复制的文件组。
HKU HKEY_USERS.
-----------------------------------------------------------
FLG_ADDREG_APPEND 在多字符串后添加字符
FLG_ADDREG_TYPE_SZ 字符类型
FLG_ADDREG_TYPE_MULTI_SZ 字符串类型
AddReg=AddRegName
[My_AddReg_Name]
HKLM,SOFTWARE\Microsoft\TelnetServer\1.0,TelnetPort,0x00010001,99
HKLM,SOFTWARE\Microsoft\TelnetServer\1.0,NTLM,0x00010001,1
INF文件应用示例
XP系统自带制作各种CAB压缩与自解压缩包
第三步
在“确认提示”(Confirmation prompt)这一环节,软件会询问在木马程序解包前是否提示用户进行确认,由于我们是在制作木马程序的解压包,当然越隐蔽越好,选择第一项“不提示”(No prompt),这么做的目的是让中招人毫无防备。点击“下一步”按钮,在接下来的添加“用户允许协议”(License agreement)中添加一个伪装的用户协议迷惑中招者,选择“显示用户允许协议”(Display a license),点击“Browse”选择一份编辑好的TXT文档,此文档可以用微软公司的名义来编辑,设置完毕后点击“下一步”。这一步的目的是迷惑对手并隐藏木马安装的过程。
在保存刚才所做的设置后点击“下一步”按钮,即可开始制作木马自解压程序。
整个制作过程是在DOS下进行的,在完成度达到100%后会弹出提示窗口,点击“完成”,木马程序与合法程序的捆绑工作就完成了(格式为EXE),直接双击即可运行。你再用杀毒软件查一查。怎么样?已经完全不会被查出来了播技术或木马电子书技术发布你的木马去吧。当然,你也可以把它作为IE的重要补丁发送给别人。
随后进入安装程序选择窗口,指定解压缩包开始运行的文件(Install Program)和安装结束后运行的程序(post install command)。例如,在Install Program内设置正常的IE补丁包先运行,此时木马并未运行,在中招者看来的确是一个IE补丁包。在post install command内设置木马程序,这样在IE补丁包安装完毕时,木马程序将会在后台执行,我们的目的也就达到了。
因为我们要制作的是木马解压包,所以应该选择第一项。在输入压缩包标题后点击“下一步”按钮。
ActiveX控件cab包制作教程
Web ActiveX控件制作Web ActiveX控件制作 (1)1. 制作ActiveX控件的工具 (2)2. ActiveX控件制作步骤 (3)2.1. 制作数字证书 (3)2.2. 制作cab包 (4)2.2.1. 制作xx.inf文件 (4)2.2.2. 制作cab包 (5)2.3. 制作有数字签名的ActiveX控件 (5)3. 界面运行情况 (12)3.1. 安装数字证书 (12)3.2. 安装控件 (14)1.制作ActiveX控件的工具下载工具包:/upload/signtool.rar,解压至根目录(最好是根目录,方便后边敲路径),我的路径是E:\delphi\signtool\制作ActiveX控件需要用到的工具如下:制作cab包的工具制作数字证书工具在控件上签署数字签名的工具2.ActiveX控件制作步骤2.1. 制作数字证书在cmd下或者“运行”中输入以下命令:这里的printocx.pvk是我新创建的私人密钥;CN=KeHong Company是持有人或者颁发者,你可以CN=XX公司;最后的printocx.cer则是新建的证书。
根据提示在弹出的窗口输入私钥密码(因为做这个证书的目的并不是为了安全,所以密码建议设成123456之类好记的):执行结束后,在目录下会生成两个文件:printocx.pvk、printocx.cer。
证书的制作就是这么简单。
2.2. 制作cab包2.2.1.制作xx.inf文件Test.inf文件是用于之后的控件打包压缩。
例如cab包共需要打包的文件有:ClientOCX.ocxDllDeinterlace.dllmsvcp71.dllTest.inf文件内容如下:; INF file for HD_Viewer.cab[version]signature="$CHICAGO$"AdvancedINF=2.0; 以上部分不要修改[Add.Code]ClientOCX.ocx= ClientOCX.ocxDllDeinterlace.dll= DllDeinterlace.dllmsvcp71.dll= msvcp71.dll[ClientOCX.ocx]file-win32-x86=thiscabclsid={AC69DFDB-D959-4B9A-9F30-8A2160051C12}DestDir=11FileVersion=1,0,0,1RegisterServer=yes[DllDeinterlace.dll]file-win32-x86=thiscabDestDir=11FileVersion=1,1,0,3RegisterServer=yes[msvcp71.dll]file-win32-x86=thiscabDestDir=11FileVersion= 8,0,50727,762RegisterServer=yes; end of INF file注:INF文件具体配置可在网络搜索或见/immc1979/article/details/1572222 2.2.2.制作cab包创建cab包在cmd下或者“运行”中输入以下命令:cabarc.exe -s 6144 N print.cab msvcp71.dll DllDeinterlace.dll ClientOCX.ocx Test.inf 6144表示预留数字签名的空间print.cab表示生成的cab包名称msvcp71.dll DllDeinterlace.dll ClientOCX.ocx 表示需要打包的文件Test.inf为创建的控件打包压缩初始化文件运行该命令后,系统在当前窗口生成一个print.cab压缩包2.3. 制作有数字签名的ActiveX控件下面我们来对自己做的ocx控件签名(我的控件是print.cab),双击目录里的signcode.exe文件,出现了数字签名向导:选择控件包print.cab:下一步,签名选项选“自定义”下一步,选择证书,点击“从文件选择”,这里要把默认类型换成X.509证书:下一步,选择私钥,即刚才生成的printocx.pvk文件:会提示输入密码,即上面你设置的密码,比如之前我建议你设的123456:下一步,算法选择sha1即可:下一步,默认不用管:下一步,数据描述,这里要认真写一下了,最后客户的IE浏览器提示的文件描述就是这里所填的:下一步,时间戳也不用理会,直接下一步完成:最后会再次提示输入私钥,输入你设置的密码123456,确定,即提示“数字签名向导已完成”。
WinCE CabManager制作修改CAB安装详细图文教程
柒拾贰元整WinCE CabManager制作修改CAB安装详细图文教程使用M8过程中,安装使用相关软件,或者自己制作美化文件替换系统文件以达到美化UI的效果是广大煤油经常要“折腾”的。
在此过程中可能会遇到一些问题,特别是美化文件替换系统文件比较麻烦,另外一些安装包安装方式和内容有些人不喜欢,比如安装包不允许卸载,不允许选择安装目录,应用程序名称或者公司名称加入网址等广告信息,这些其实都可以通过自己对安装包的制作修改解决。
下面就通过两种安装包的制作方式,WinCE平台支持的安装包为CAB格式文件,给大家介绍一下如何制作WinCE平台的CAB安装包,如何修改。
另外之前对M8的系统以及软件安装做了初步介绍,与该文也有一定关联,有兴趣的可以看看,浅谈魅族M8的系统与软件安装:/article/3497.html一、使用WinCE CabManager制作修改CAB安装包在开始制作之前,准备好WinCE CabManager打包工具,需要打包的文件,这里以替换系统shellres.192.dll文件实现美化为例,该文件为VGA分辨率WM6系统文件,内含系统相关文件图标。
1、运行WinCE CabManager。
2、在主界面选择文件-》新建创建一个新的CAB项目,或者通过工具栏新建按钮创建。
这时候进入创建CAB项目的向导。
依照向导一步步往下走,首先设置应用程序的信息,包括公司名称以及应用程序名称:接下来设置CAB安装包的支持设备类型,根据需要选择。
接下来选择支持处理器类型,一般选择ALL/CEF。
然后向导走完,最后一步告诉基本CAB安装项目创建完,下面就是定制自己的CAB安装包需要做的事情清单,包括设置程序安装路径,添加程序应用程序包含的文件,按需要添加快捷方式以及注册表项,另外还有其他相关的设置。
3、进入CAB安装包定制界面,刚才在向导中设置的信息已经显示在中央了。
CAB 安装包左边信息目录包含文件、快捷方式以及注册表三大项。
Visual Studio 2008(c#)开发ActiveX控件及制作CAB包总结
开发及测试环境:(1)开发环境:Visual Studio 2008 SP1cabsdk(下载地址:/kb/310618) (2)测试环境:Windows Server 2003 R2 SP2IE62、创建项目我这里创建了三个项目:(1)HelloBossma :项目模板:Windows窗体控件库(2)HelloBossmaSetup:项目模板:安装项目(3)Web:项目模板: 网站3、HelloBossma项目这个项目用于编写具体的控件,并生成安装文件所需要的dll。
(1)添加用户控件:(2)设计控件:添加Panel、GroupBox、Label 控件。
NowTime是一个Label控件,用于显示时间。
然后在控件对应的代码文件中编写程序:using System;using System.Collections.Generic;using ponentModel;using System.Drawing;using System.Data;using System.Text;using System.Windows.Forms;using System.Runtime.InteropServices;namespace HelloBossma{/// <summary>/// Guid将用作控件的classid/// IObjectSafety的是用来标记可安全执行脚本的ActiveX控件/// </summary>[Guid("636B8CE1-7512-464C-B63C-FC75BDCA21DB"),ProgId("HelloBossma.HelloBossmaActiveX"), ComVisible(true)] public partial class HelloBossmaActiveX : UserControl, IObjectSafety {private const string _IID_IDispatch ="{00020400-0000-0000-C000-000000000046}";private const string _IID_IDispatchEx ="{a6ef9860-c720-11d0-9337-00a0c90dcaa9}";private const string _IID_IPersistStorage ="{0000010A-0000-0000-C000-000000000046}";private const string _IID_IPersistStream ="{00000109-0000-0000-C000-000000000046}";private const string _IID_IPersistPropertyBag ="{37D84F60-42CB-11CE-8135-00AA004BB851}";private const int INTERFACESAFE_FOR_UNTRUSTED_CALLER =0x00000001;private const int INTERFACESAFE_FOR_UNTRUSTED_DATA =0x00000002;private const int S_OK = 0;private const int E_FAIL = unchecked((int)0x80004005);private const int E_NOINTERFACE = unchecked((int)0x80004002);private bool _fSafeForScripting = true;private bool _fSafeForInitializing = true;public HelloBossmaActiveX(){InitializeComponent();}/// <summary>/// 设置当前时间/// </summary>/// <param name="timeStr"></param>public void SetTime(string timeStr){bel2.Text = timeStr;}public int GetInterfaceSafetyOptions(ref Guid riid,ref int pdwSupportedOptions,ref int pdwEnabledOptions){int Rslt = E_FAIL;string strGUID = riid.ToString("B");pdwSupportedOptions = INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA;switch (strGUID){case _IID_IDispatch:case _IID_IDispatchEx:Rslt = S_OK;pdwEnabledOptions = 0;if (_fSafeForScripting == true)pdwEnabledOptions = INTERFACESAFE_FOR_UNTRUSTED_CALLER;break;case _IID_IPersistStorage:case _IID_IPersistStream:case _IID_IPersistPropertyBag:Rslt = S_OK;pdwEnabledOptions = 0;if (_fSafeForInitializing == true)pdwEnabledOptions =INTERFACESAFE_FOR_UNTRUSTED_DATA;break;default:Rslt = E_NOINTERFACE;break;}return Rslt;}public int SetInterfaceSafetyOptions(ref Guid riid,int dwOptionSetMask,int dwEnabledOptions){int Rslt = E_FAIL;string strGUID = riid.ToString("B");switch (strGUID){case _IID_IDispatch:case _IID_IDispatchEx:if (((dwEnabledOptions & dwOptionSetMask) == INTERFACESAFE_FOR_UNTRUSTED_CALLER) &&(_fSafeForScripting == true))Rslt = S_OK;break;case _IID_IPersistStorage:case _IID_IPersistStream:case _IID_IPersistPropertyBag:if (((dwEnabledOptions & dwOptionSetMask) == INTERFACESAFE_FOR_UNTRUSTED_DATA) &&(_fSafeForInitializing == true))Rslt = S_OK;break;default:Rslt = E_NOINTERFACE;break;}return Rslt;}}}关于IObjectSafety的实现参考了:/default.aspx/Interfaces/IObjectSafety.html using System;using System.Collections.Generic;using System.Text;using System.Runtime.InteropServices;namespace HelloBossma{[ComImport,GuidAttribute("CB5BDC81-93C1-11CF-8F20-00805F2CD064")] [InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)]public interface IObjectSafety{[PreserveSig]int GetInterfaceSafetyOptions(ref Guid riid,[MarshalAs(UnmanagedType.U4)]ref int pdwSupportedOptions, [MarshalAs(UnmanagedType.U4)] ref intpdwEnabledOptions);[PreserveSig()]int SetInterfaceSafetyOptions(ref Guid riid,[MarshalAs(UnmanagedType.U4)]int dwOptionSetMask, [MarshalAs(UnmanagedType.U4)] int dwEnabledOptions);}}这里还包含了一个可以被外部调用的方法,传进来一个字符参数,并显示出来:/// <summary>/// 设置当前时间/// </summary>/// <param name="timeStr"></param>public void SetTime(string timeStr){bel2.Text = timeStr;}(3)设置生成属性,勾选:为Com互操作注册(4)生成项目,生成这两个文件:HelloBossma.dllHelloBossma.tlb是必须的,否则生成不成功。
ActiveX控件打包CAB包说明
CAB打包文档说明一、文档目的本文档的目的在于说明将ocx和dll以及相关的文件打包成一个CAB包,以便在网页下调用ocx控件时免去手工将dll和其他一下文件拷贝到客户机,方便了现场施工。
二、打包工具打包工具有makeCAB其中,ActvxDoc.exe用来查看ocx的CLSID,signcode.exe用来对打包好的cab进行数字签名,其它的用于生成数字认证文件。
三、打包过程1、将打包工具makeCAB里面的所有文件放到系统文件夹system32目录下2、新建一个文件夹,将所有要打包进cab的文件放在该新建的文件夹下3、编写inf安装文件。
新建一个txt文本文档,并将其改名为*.inf安装文件,按照以下格式4、编写运行的bat文件。
新建一个txt文本文档,并将其改名为*.bat运行文件,按照以下5、运行编写好的bat文件。
将所有需要打包的文件和上两步编写好的inf、bat放在同一个目录下,双击bat文件运行,首先生成数字签名所需要的pvk、cer、spc文件,然后打包成cab,最后运行signcode.exe程序进行数字签名。
(以上步骤为双击bat文件后自动生成的)在signcode界面中,点击【下一步】,点击【浏览(R)…】,更改文件类型为*.cab,选中刚生成的cab文件,点击【打开】,然后点击【下一步】,选择【自定义】,然后点击【下一步】,点击【从文件选择】,打开刚才生成的cer文件,点击【下一步】首先选择【磁盘上的私钥文件】,点击浏览选择刚才生成的PVK文件,然后选择【CSP中的私钥】,在【密钥容器】中选择*.pvk(为刚才选择的pvk),点击【下一步】。
选中【sha1】,然后点击【下一步】选中【包括在以下PKCS#7(.p7b)文件中的证书(P)】,点击浏览,选择刚才生成的spc文件,点击【下一步】然后一直点击【下一步】直到数字签名完成。
四、版本控制对.cab包进行版本更新,使用户能够打开浏览器时自动下载更新.cab包,需进行如下处理。
如何制作cab包(解决不能注册的问题)
如何制作cab包(解决不能注册的问题)如何制作cab包制作SSL VPN客户端插件cab包有两种方法,一种是手动打包,另一种是利用Ant自动打包,下面分别对两种方法进行说明,你可以根据熟练程度自由选择。
一、手动打包准备工作l 用到的工具打包工具iexpress.exe签名工具signcode.exe代码签名证书l 打包文件WVC.ocxLiteUnzip.dllmfc80u.dllmfcm80u.dllmsvcm80.dllmsvcp80.dllmsvcr80.dllMicrosoft.VC80.CRT.manifestMicrosoft.VC80.MFC.manifest在制作cab包之前,需要准备以上的打包、签名工具和文件,将iexpress.exe和signcode.exe复制到Java环境变量的bin目录下。
打包文件全部存放在独立的一个文件夹下。
制作步骤步骤1 准备inf文件将以下代码另存为wvc.inf,存放于打包文件目录下。
文件内容一般情况下不需要改变,除非cab需要增加或减少文件的情况下,再修改此文件。
Text代码1.[version]2.signature="$CHICAGO$"3.AdvancedINF=2.04.5.[DefaultInstall]6.CopyFiles=files7.RegisterOCXs=RegisterFiles8.9.[DefaultUninstall]10.cleanup=111.Delfiles=files12.UnRegisterOCXs=RegisterFiles13.14.[SourceDisksNames]15. 1 = %DiskName%,"wvc.cab",116.17.[SourceDisksFiles]18.WVC.ocx=119.LiteUnzip.dll=120.mfc80u.dll=121.mfcm80u.dll=122.msvcm80.dll=123.msvcp80.dll=124.msvcr80.dll=125.Microsoft.VC80.CRT.manifest=126.Microsoft.VC80.MFC.manifest=127.westone.cer=128.29.[RegisterFiles]30.%11%\sslvpn\WVC.ocx31.32.[DestinationDirs]33.files=11, sslvpn34.35.[files]36.WVC.ocx=WVC.ocx37.LiteUnzip.dll=LiteUnzip.dll38.mfc80u.dll=mfc80u.dll39.mfcm80u.dll=mfcm80u.dll40.msvcm80.dll=msvcm80.dll41.msvcp80.dll=msvcp80.dll42.msvcr80.dll=msvcr80.dll43.Microsoft.VC80.CRT.manifest44.Microsoft.VC80.MFC.manifest45.westone.cer=westone.cer46.47.[WVC.ocx]48.file-win32-x86=thiscab49.clsid={C8E6EFFA-ED02-4858-836A-B164102F3C5D}50.RegisterServer=yes51.FileVersion=1,0,0,152.53.[LiteUnzip.dll]54.file-win32-x86=thiscab55.FileVersion=0,0,0,256.57.[mfc80u.dll]58.file-win32-x86=thiscab59.FileVersion=8,0,50727,4260.61.[mfcm80u.dll]62.file-win32-x86=thiscab63.FileVersion=8,0,50727,4264.65.[msvcm80.dll]66.file-win32-x86=thiscab67.FileVersion=8,0,50727,4268.69.[msvcp80.dll]70.file-win32-x86=thiscab71.FileVersion=8,0,50727,4272.73.[msvcr80.dll]74.file-win32-x86=thiscab75.FileVersion=8,0,50727,4276.77.[westone.cer]78.file-win32-x86=thiscab79.80.[Strings]81.DiskName = "sslvpn"注释:2 "thiscab" 是一个关键字,意指包含该INF的CAB文件。
制作支持WIN7标准用户安装的CAB包(转载)
制作支持WIN7标准用户安装的CAB包(转载)制作支持WIN7标准用户安装的CAB包(转载)2011-08-03 09:39:28| 分类:默认分类 |举报 |字号订阅在近期的签名控件OCX测试过程中,碰到了此问题,以往制作的CAB都是在管理员用户下安装的,为了达到能够兼容标准用户,通过查阅网络上资料和反复测试,解决以上问题,现提供出来供大家参考,如有不妥之处,请大家进一步补充说明。
众所周知,制作OCX控件的CAB需要INF配置文件,而且CAB 的最终下载和安装都是根据INF文件的配置来进行的,下面直接贴本次最终测试通过的INF文件代码:[version]signature=”$CHICAGO$”AdvancedINF=2.0[Add.Code]SignX.ocx=SignX.ocx[Deployment]InstallScope=user|machine[SignX.ocx]file-win32-x86=thiscabclsid={控件guid}FileVersion=1,8,3,0RegisterServer=yesRedirectToHKCU=yes以上字段的含义相信大家都基本明白,这里只说明一下如何实现支持WIN7标准用户的。
要实现标准用户成功安装,就需要使用IE8及以后版本的“No-Admin ActiveX” 安装模式;No-Admin安装模式字面意思就是安装不需要管理员权限,主要是为了兼容非管理员用户安装使用控件;No-Admin ActiveX模式依赖与INF文件中以下几个健值:1, InstallScope健[Deployment]InstallScope=user|machine当InstallScope=user时,控件安装时只为当然用户使用,控件的注册表信息都在current_user下,这个就避免了必须管理员权限才能安装的限制。
当InstallScope=user| machine时,控件安装时,如果安装的用户有管理员权限则安装为整个机器使用,否则也只会当前用户使用;2,RedirectT oHKCU健RedirectToHKCU=yes该健的含义就是注册表是否重定向,是否把控件在注册表local_machine和root下的注册信息重定向到current_user中;关于No-Admin ActiveX模式更详细的说明,请参考MSDN/en-us/library/dd433049(v=vs.85).aspx补充:No-Admin ActiveX 安装模式需要WEB服务端的支持,要求Web Server支持正确的mine type mapping,如果使用T omcat,建议在web.xml中增加如下内容:<mime-mapping><extension>cab</extension><mime-type>application/vnd.ms-cab-compressed</mime-type></mime-mapping>。
win10升级,不会安装Cab升级文件,是因为你没有掌握这6个方法
win10升级,不会安装Cab升级文件,是因为你没有掌握这6个方法Windows更新并不总是工作正常,有时会出现问题,无法正常更新,这时,可以尝试修复它。
修复Windows更新常用的一个方法是是手动安装更新,可以使用任何浏览器从windows更新目录中下载更新,这些更新文件一般是用* .msu文件的形式提供,但是也有更新文件提供的是* .cab文件,这些文件就不是那么容易安装了。
本文目录•手动安装Cab文件•使用DISM-Gui快速安装cab文件•一次安装多个cab文件•排除安装cab文件时出现的错误•无法安装cab文件中的驱动程序•通过上下文菜单安装cab文件•使用Cab Update Installer安装Cab更新文件一、手动安装Cab文件1.从网站下载扩展名为.cab文件的wondows更新文件。
2.在任务栏的搜索框中输入“命令提示符”或cmd,然后单击“以管理员身份运行”,打开DOS窗口。
3.将以下命令复制到DOS窗口中:DISM.exe /Online /Add-Package /PackagePath:4.现在,开始输入Cab文件的路径,注意在PackagePath之后不要留空格。
下面是输入的技巧。
5.由于下载的cab文件名称较长,为了便于浏览的使用,可以将它重命名一个较短的文件名,例如windows10-kb3154879-x86。
6.在文件资源管理器中打开下载的cab文件所在的目录,按住Shift键右键单击cab文件,在弹出的菜单中选择“复制为路径”命令,并将其复制到命令提示符窗口中。
现在,使用向左箭头键和Delete删除路径中出现的两个引号,这省去了手动输入整个路径的麻烦。
7.最后在DOS窗口中看到的应该是这样的:DISM.exe /Online /Add-Package /PackagePath:"C:\Users\Dein Name\Downloads\windows10.0-kb3154879-x86.cab"8.按Enter键,将开始安装cab更新文件。
VB制作CAB包
VB制作CAB包概述:用VB建立一个与控件同名的ActiveX工程,然后用VB的Package & deployment wizard 向导,制作CAB包。
在Package type中选择Internet package,后面添加要打包的文件,并去掉不需要的文件。
inf文件是自己生成的,但是没有给出文件下载的位置,所以要在Support目录中,编辑inf文件。
然后运行相应的MS-DOS批处理文件,会重新创建CAB 包。
具体步骤如下:1.新建VB工程1)打开VB,选择File->New Project,在New Project对话框中选择“VB Wizard Manger”,点击OK,2)根据提示,将工程保存在指定位置,并为工程命名,保存。
切记vb工程名与要打包的Activex控件名要一致。
3)点击File->Save Project,保存工程,退出VB。
2.使用Package & deployment wizard制作CAB包1)在Microsoft Visual Studio 6.0 Tools中选择Package & deployment wizard 向导。
2)点击Browse选择前面保存的VB工程MyWizard.vbp,再点击Package图标。
3)根据向导,选择Compile。
4)在Package Type窗口,选择Internet Package,点击next.5)在Package Folder窗口,设置Package文件要存放的文件夹,6)在警告窗口,直接点击“OK”按钮。
7)在Included Files窗口,取消所有的复选框,然后点击Add按钮。
7)在Add File窗口,将要打包的Activex文件、exe文件、dll文件等,一一增加到Included Files中,在Included files窗口点击next。
8)在File Soutce窗口,直接点击next。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CAB包制作与手动安装
一、CaB包制作:
Cabinet Maker - Lossless Data Compression Tool
MAKECAB [/V[n]] [/D var=value ...] [/L dir] source [destination]
MAKECAB [/V[n]] [/D var=value ...] /F directive_file [...]
source File to compress.
destination File name to give compressed file. If omitted, the
last character of the source file name is replaced
with an underscore (_) and used as the destination.
/F directives A file with MakeCAB directives (may be repeated). Refer to
Microsoft Cabinet SDK for information on directive_file.
/D var=value Defines variable with specified value.
/L dir Location to place destination (default is current directory).
/V[n] Verbosity level (1..3).
C:\Users\xieeeT\Desktop\PDFEditorActiveX>makecab /f list.txt /d compressiontype=lzx /d compressionmemory=21 /d maxdisksize=1024000000 /d diskdirectorytemplate=d /d cabinetnameplate=d.cab
二、IE控件cab包手动安装
XP、Win7和Win8手动安装IE控件的cab包
方法/步骤1
一、若你是XP系统,你可以这样安装:
第1步:先解压cab包(随便解压软件都行),在解压的文件中找到*.inf文件,然后右击,选择安装,此时会把解压文件拷到C:\Windows\System32\文件夹下。
(当然手动拷贝也可以,inf文件就不用拷过去)
第2步:注册拷到上述文件夹下的ocx文件。
和普通ocx注册一样,运行cms.exe,
regsvr32 路径\*.ocx
第3步:cab包此时已经安装完成啦,但是浏览器别忘加信任站点和自定义级别啦。
2
二、若你是win7或win8系统,你得这样安装:
第1步:先解压cab包(随便解压软件都行),手动把解压的文件拷贝到系统的
C:\Windows\SysWOW64文件夹下,
第2步:以管理员身份运行cmd.exe(必须是管理员身份),注册拷到上述文件夹下的ocx文件。
(此步骤和单纯注册ocx控件一样)
第3步:浏览器别忘加信任站点和自定义级别啦。
第4:此时基本没啥问题啦。
3
三、win7或win8系统这样安装的原因:
因为win7和win8大多是64位系统,而64位系统一般都是可以安装32位程序的。
但是,
执行的是C:\Windows\SysWOW64\regsvr32.exe
而不是C:\Windows\System32\regsvr32.exe。