`
isiqi
  • 浏览: 16549463 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

实现Wince程序的安装包制作的自动化

阅读更多

实现Wince程序的安装包制作的自动化

网上有很多wince程序的安装包制作工具,经常用到的有Wince cab manager,这些工具使用起来比较简单,这里就不再详细介绍。本文主要描述的是利用wince提供的打包工具进行打包的工作,通过脚本来实现安装包制作。

一、需要的文件

首先需要如下几个文件cabwiz.execabwiz.ddfmakecab.exe通常在你的wince的安装目录下C:\Program Files\Windows CE Platform Builder\5.00\CEPB\BIN,将这些文件拷出,并放入c盘。

二、认识inf文件

wince自带的打包工具采用脚本的方式来进行打包,这个脚本便是inf文件,因此需要对inf文件的格式有相当的了解。

INFDevice INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件设备的信息或脚本以控制硬件操作。在INF文件中指明了硬件驱动该如何安装到系统中,源文件在哪里、安装到哪一个文件夹中、怎样在注册表中加入自身相关信息等等。安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的功劳才使得Windows可以找到这些硬件设备的驱动并正确安装。

INF文件的规则

INF文件其实是一种纯文本文件,可用任意一款文本编辑软件打开进行编辑,如:记事本、写字板等。INF文件有一整套的编写规则,每一个INF文件都是严格按照这些规则来编写的。

*规则一INF文件是分节的,每个INF文件有许多的节组成,节名用方括号括起来。这些节名有些是系统定义好的,有些是用户自定义的。每节名最长为255字符(Win2K/XP/2003)或28个字符(Win 98)。节与节之间没有先后顺序的区别,另外,同一个INF文件中如果出现两个同样的节名,则系统会自动将这两个节名下面的条目合并到一起。

*规则二:在节与节之间的内容叫条目,每一个节又是由许多的条目组成的,每一个条目都是由形如"signature="$CHICAGO$""的形式组成的。如果每一个条目的等号后有多个值,则每一个值之间用","号分隔开。

*规则三INF文件对大小写不敏感。

*规则四""号后面的内容为注释。

*规则五:如果一个条目的内容过多,则用"\"将一行内容书写为多行。

INF文件节的定义

Version

每个INF文件都包含此节,该节中的条目主要是描述此INF文件支持的设备类型和适用的操作系统。在该节中如果出现"signature=" $CHICAGO$""这样的条目则表示该INF文件适用于Windows 98之后的所有操作系统,如果包含"signature="$Windows NT$""这样的条目则表示该INF文件适用于Windows 2000/XP/2003操作系统,而且两者必具其一。另外,该节中"CLASS"条目表明设备类型,常见类型有:Display(显示设备,如显卡)、Media(多媒体设备,如声卡)、Net(网络设备,通常是网卡)、Modem(调制解调器)、Printer (打印设备)、Image(图像捕获设备,如摄像头)。

Manufacturer

该节中的条目主要是描述INF文件可以识别的所有硬件设备,其中包含有设备的生产厂家,以便设备的正确安装。如"%ATi%=ATi"指明设备的生产商为"ATi",这个大家都不会陌生吧,是显卡的生产商。

SourceDisksNames

该节主要指明安装文件所在的介质。如:"1="ATi Drivers Release CD""表明所有驱动程序都在零售版的CD盘上。

SourceDiskFiles

驱动程序文件列表及被安装的位置,该节必须结合[SourceDisksNames]节才能知道具体的位置。如"atinbtxx.sys=1",则你必须到[DestinationDirs]节去查看"1"具体代表那个位置。

DestinationDirs

INF文件指示安装程序在安装的过程中将一些文件复制到硬盘,或将硬盘上的一些文件删除、重命名等。该节即指定了文件所在的路径。

DefaultInstall节和Install

描述了设备驱动程序与硬件设备的实际属性。默认情况下,首先执行[DefaultInstall]节,该节指定了要复制或删除的文件,注册表的更新,INF文件的更新等等信息,同时又包含指向其他节的指针。

String

该节定义了字符串变量,当某些字符串频繁地出现在INF文件中,为简化输入,可在该节中定义一字符串变量,代表该字符串出现在INF文件中。

三、一个简单的安装包的制作

此简单的安装包主要是制作inf文件,我们这次制作的安装包将要安装到嵌入式设备中,安装的全路径为:

\flash\photo.jpg

\test disk\test.exe

\test disk\test.jpg

并且我们设定test.exe为启动文件。

1、在PC上放置一些文件,存放的全路径为:

F:\CurRel\flash\photo.jpg

F:\CurRel\test disk\test.exe

F:\CurRel\test disk\test.jpg

2、写一个inf文件,保存成test.inf文件。

[Version]

Signature=$Windows NT$

Provider=Company Name

CESignature=$Windows CE$

[CEStrings]

AppName=testApp

InstallDir=\test disk

[Strings]

REG_INIT=\test disk\test.exe

[WriteRegedit]

1=HKLM,init,Launch50,REG_SZ,%REG_INIT%

[SourceDisksNames]

1=,SourceDir,,F:\CurRel\flash

2=,SourceDir,,F:\CurRel\test disk

[DestinationDirs]

CopyFileList1=0,\flash

CopyFileList2=0,\system disk

[SourceDisksFiles]

photo.jpg=1

test.exe=2

test.jpg=2

[CopyFileList1]

1=photo.jpg

[CopyFileList2]

2=test.exe

3=test.jpg

[DefaultInstall]

Copyfiles=CopyFileList1,CopyFileList2,

AddReg=WriteRegedit

3、将cabwiz.execabwiz.ddfmakecab.exe放置在C盘,并将前述保存的test.inf文件也存于C盘。然后运行命令行命令:c:\cabwiz.exe "c:\test.inf" /dest "f:\currel" /err test.log

运行后将会在F:\CurRel中生成test.CABtest.DATtest.log,其中test.cab即为安装包,可在wincedevice上进行安装,test.log为安装包的生成log,可从中检查是否发生了错误。

四、小结

以上的简单的安装包可以扩展成更多的存放路径及更多的文件,可以满足中小型安装包的应用。一旦制作成功,只需将inf文件进行保存,每次制作新安装包只需将相关的文件替换即可。

另外由于inf文件限制比较多,无法做到灵活应用,可采用动态生成inf文件的方法。主要思路如下:将文件按照相对路径的方式存放在某一文件夹中,然后生成一个xml文件,此xml文件存放了这些文件的数量及要安装的路径,凭此xml文件动态生成inf文件,然后自动制作安装包。

检查时,只需核对xml文件即可,如此做法,可达到动态的自动制作安装包的目的。

分享到:
评论

相关推荐

    PPC Smartphone WinCE软件安装包制作

    根据给定的信息,本文将详细探讨PPC(Pocket PC)、Smartphone及WinCE平台下的软件安装包制作方法,包括如何利用SDK自带工具和免费软件来简化安装包制作流程,以及如何通过命令行编译链接程序以提高自动化程度。...

    WinCE 安装包制作工具

    WinCE Cab Manager v3.0.0.22是一款专门用于制作WinCE安装包的工具,它提供了简洁的界面和丰富的功能,帮助开发者高效地打包和管理应用程序。 一、WinCE Cab Manager简介: WinCE Cab Manager是一款用于构建、编辑...

    制作WINCE下安装包CAB文件

    ### 制作WINCE下安装包CAB文件 #### 一、CAB文件简介与应用场景 CAB文件是一种专门用于Windows CE(WinCE)及Windows Mobile等嵌入式操作系统的压缩格式文件,它允许用户在这些平台上下安装应用程序或更新系统组件...

    WINCE打包工具安装包制作工具

    在开发基于WINCE的应用程序时,我们需要将应用程序及其依赖项打包成一个便于安装的文件,这通常涉及到安装包制作工具。本篇文章将深入探讨如何使用C#语言来创建WINCE的打包工具,以及数据采集器在其中的角色。 首先...

    WinCE应用程序开机自动运行

    WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机...

    wince sqlce安装包

    当初做wince数据库的时候,我就是不爽有人出高分上传这个安装包,当初就是因为分数不够才到处找,这个安装程序是我在官网上下载的,只要跟着提示安装,就可以在C:\Program Files\Microsoft SQL Server Compact ...

    wince 6.0安装包下载地址

    这个可是可以下载下来安装的,不是在线安装的。 安装序例号可以在网上找,很多!

    WinCE6.0 R3离线安装包

    ### WinCE 6.0 R3离线安装包解析及应用 #### 一、概述 随着信息技术的发展,嵌入式操作系统在智能设备领域扮演着越来越重要的角色。Microsoft Windows Embedded Compact (WinCE)作为一款功能强大的嵌入式操作系统...

    实现wince 下的应用程序自动运行的方法

    这种方法允许你在Windows CE 6.0系统中实现应用程序的自动化启动,无需用户手动操作,对于某些需要后台服务或初始化任务的应用场景尤其有用。请注意,每次修改项目后,都需要重新构建内核映像以确保改动生效。

    WINCE程序设计 WINCE程序设计

    WinCE的核心在于其模块化设计,可以根据不同的硬件平台和应用需求进行裁剪和扩展,以适应各种嵌入式设备的限制。 1. WinCE架构与组件: - WinCE采用微内核结构,主要包含内核、设备驱动、基础服务和应用程序接口...

    wince cab安装包专用绿化工具CAB_Manager

    提供的“WinCE_CAB_Manager”可能是该绿化工具的主程序文件名,这通常是一个可执行文件,用户运行它来处理 CAB 安装包。这个工具可能包括以下功能: 1. **扫描与识别**:检测 CAB 文件中的组件和依赖项。 2. **解压...

    修改注册表实现wince开机自动运行程序.doc

    本文将详细介绍如何通过修改注册表实现 Wince 开机自动运行程序。 注册表的概念 在 Windows CE 中,注册表(Registry)是一种关键的系统组件,负责存储系统的配置信息、应用程序的设置、用户的偏好等信息。注册表...

    wince程序设计 wince程序设计 wince程序设计

    Windows CE被广泛应用于各种领域,如PDA、车载导航系统、医疗设备、自动化系统和工业控制等。例如,它在手持数据终端、POS机、ATM机和某些智能家用电器中都有应用。 8. 最新发展: 虽然Windows CE已经不再继续...

    WinCE6.0平台中文SDK安装包

    这个是wince6.0下的sdk,可以直接安装,是中文的,非常好用

    wince程序设计教程

    1. 工业自动化:Wince被广泛应用于生产线控制、数据采集等场景,开发相应的监控软件。 2. 智能设备:如PDA、GPS导航仪,通过Wince开发定制化应用。 3. 医疗设备:在医疗仪器中,Wince可以帮助实现数据处理、存储和...

    Motorola PDA端开发安装包 WINCE5.0 6.0 NET3.5

    Motorola PDA端开发安装包是专为在Motorola MC30XX系列设备上进行应用程序开发和部署设计的工具集合。这个安装包包含了Windows CE 5.0和6.0的操作系统版本,以及.NET Framework 3.5,这些都是在PDA(个人数字助理)...

    WINCE 5.0 ,6.0 ,7.0 应用程序自动更新源代码

    真正实现通过配置文件实现WINCE APP 自动更新的通用程序 要点: 1,UPDATELIST 文件第一行为服务器下载文件夹虚拟路径 2,UPDATELIST 文件第二行为本地APP程序 3,需要在SHSAN.EXE 所在文件夹建立temp 子文件夹

    VS2008网络连接并调试WinCE程序

    通过这些步骤,开发者可以实现对WinCE应用程序的远程调试和程序包部署。这在整个嵌入式开发流程中是非常关键的一步,因为它允许开发者在模拟器环境中测试程序功能,并确保程序在目标设备上运行时的稳定性和性能。...

    wince6.0上的.net framework 3.5安装包

    一般wince系统经过裁剪后,不一定支持.netframwork,即使支持也很可能是低版本的,要自已定制.netframework3.5的... 把资源解压缩后得到cab安装包,共享到wince6上安装就可以了。只是每次wince6启动以后都要安装一下。

Global site tag (gtag.js) - Google Analytics