将cab包中控件安装到自定义目录下的INF文件的编写.docxVIP

将cab包中控件安装到自定义目录下的INF文件的编写.docx

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
将cab包中控件安装到自定义目录下的INF文件的编写

将cab包中控件安装到自定义目录下的INF文件的编写在工作中经常会遇到这样一些项目:为了方便客户安装控件及控件的升级,很多项目采用将控件打包成 cab包,挂在业务系统后台,最终客户访问前端页面时,自动进行控件的加载及安装。Cab包的制作方法比较简单,个人认为需要三项:控件的源文件、控件的依赖库文件及INF 文件。常用cab制作工具:IExpress.exe、CabMaker.exe等等,比较多,如果读者想下载或者了解工具的使用,可以百度搜索”cab制作工具”;如果读者不知道如何打包cab,亦可以网上搜索“cab包制作”。本文仅根据笔者在制作32位控件的cab包时遇到的问题,之前在网上找了很多相关的文章,仅有一篇比较能满足需求,但是根据文章中所提及的示例,笔者按照文章所述,没能实现目标,后来从其他cab中的INF文件修改着实现的,现在来和大家分享一下。好了,说了这么多废话,如果耽误读者时间,在此深表抱歉。切回到主题。先简单介绍下INF文件的一些基础。INF文件的组成有节(Sections),键(Key)和值(value)三部分。INF文件的基本结构如下:节的名称节的作用[Version]INF文件头,提供有效INF文件的版本信息[DefaultInstall]包含安装所关联动作(文件拷贝或删除,注册表键值的更新、子键增删等),在INF文件内的节名指针,默认情况下首先执行该节内容[OtherInstall]与[DefaultInstall]节遵循相同的语法,但必须被显示地调用,常被用来定义反安装动作[DestinationDirs]指定罗列于一个节内将被拷贝、删除或重命名的文件在盘上的位置[FileCopy/Delete/RenameSection(s)]罗列被拷贝、删除或重命名的文件[RegistryUpDateRenameSection(s)]罗列对注册表键值的更新、子键增删等动作[IniFileUpDateRenameSection(s)]指定对ini文件的更新,快捷方式可通过该节进行创建[SourceDisksNames]罗列文件所在盘的盘名、盘卷标、盘序列号[SourceDisksFiles]罗列安装时使用的源文件极其所在盘[Strings]罗列本地化字符串(或称宏字符串)当然,除了以上节以外,可以根据需要添加一些自定义节名称。将控件安装到自定义目录下的INF简单编写格式如下:[version]signature=$CHICAGO$AdvancedINF=2.5[DefaultInstall]CopyFiles=FileListRegisterOCXs= RegisterDll[DefaultUninstall]cleanup=1Delfiles=FileListUnRegisterOCXs=RegisterDll[RegisterDll]%常量路径%\自定义目录名称\控件文件名[控件文件名]file-win32-x86=thiscab ;文件位置,thiscab指在本cab内,也可以指定为其他网址上下载控件clsid=控件的classidFileVersion=控件文件版本RegisterServer=是否注册[DestinationDirs]FileList=常量路径, 自定义目录名称[FileList]控件文件名;此文件已在当前目录下至此,一个简单的INF文件已编写完成。参照以上格式,编写自己需要的INF,即可实现将控件安装到自定义目录下。一个简单的INF示例,将控件 test.dll 安装到系统目录下的testdir文件夹中:[version]signature=$CHICAGO$AdvancedINF=2.5[DefaultInstall]CopyFiles=FileListRegisterOCXs= RegisterDll[DefaultUninstall]cleanup=1Delfiles=FileListUnRegisterOCXs=RegisterDll[RegisterDll]%11%\testdir\test.dll[test.dll]file-win32-x86=thiscabclsid=1234-1234-1234-123456789ABC}FileVersion=1,0,0,1RegisterServer=yes[DestinationDirs]FileList=11, testdir[FileList]test.dll以下简单介绍下一些INF文件中的常量及已定义的操作,可能不全面,仅供读者参考。在[Version]节中:Signature项定义了该INF文件需要运行在何种操作系统版本中。有$Windows NT$、 $Chicago$、 $Windows 95$三个值供选

您可能关注的文档

文档评论(0)

xxj1658888 + 关注
实名认证
文档贡献者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档