制作Windows mobile下软件安装包
在windows mobile开发嵌入式软件,不论是j2me,还是其它语言写的什么程序,最后都可以用cabwiz.exe这个打包安装的工具来制作打包安装程序。笔者最近通过开发一个项目对它的体会是:不仅小巧,而且强大。刚完成在hp 4700 pda下的一个j2me的项目,使用了IBM的J9虚拟机,另外使用了db2 everyplace 嵌入式数据库。最后用cabwiz对整个软件进行打包。点滴经验与大家分享。闲话少说,希望我得到的这点经验能为你打开方便之门。
关键字:cabwiz.exe , cab, j2me ,windows mobile 2003 , windows CE,
二、基本过程:
其实过程很简单:
一,首先,把自己的程序准备好一份,做好安装计划,包括这些文件的目标路径,注册操作都要心中有算。
二,制作打包安装程序的最键部分是要做出一份安装的文件清单,这是一个以.inf为后缀的文件。
三,执行cabwiz.exe生成后缀为.cab的安装包文件
哪最关键的就是怎么写这个.inf文件了,这就是本文的主题了。这里先给出一个完整的例子
三、范文 app.inf
[Version]
Signature = "$Windows NT$"
Provider = "xilin_am@163.com"
CESignature = "$Windows CE$"[CEStrings]
CompanyName="XXX公司"
AppName =移动数据中心
InstallDir=%CE2%jtzst[CEDevice]
[DefaultInstall]
CopyFiles = Files.Application,database,picture,urllink
CEShortcuts = Shortcuts[SourceDisksNames]
1= ,"txt",,.
2=,"ShortCut",,.
3=,"LIB",,.
4=,"db",,.jtzdb
5=,"url",,.[SourceDisksFiles]
移动数据中心(pda).url =5
tz.jar =3
stwater.gif =1
atz.lnk =2
DB2e_LOCK =4
DSY_DATEINFO =4
DSY_DATE_TYPE =4
……
……
DSY_UNIT =4
isyncprefs =4
[DestinationDirs]
Files.Application = 0,%InstallDir%
Shortcuts = 0,%InstallDir%
database = 0,.
picture = 0,%CE5%个人
urllink = 0,%CE2%收藏夹[database]
DB2e_LOCK ,,,0x00000001
DSY_DATEINFO ,,,0x00000001
……
……
DSY_UNIT ,,,0x00000001
isyncprefs ,,,0x00000001
[Files.Application]
"tz.jar" ,,,0x00000001
"atz.lnk" ,,,0x00000001[picture]
"stwater.gif" ,,,0x00000001[urllink]
"移动数据中心(pda).url" ,,,0x00000001
[Shortcuts]
%AppName%,0,atz.lnk ,%CE17%
四、Inf文件介绍.inf文件是是由一系列段落片段组成,每个片段的名字定义都在在方括号中 ([ ]),名字并不区分大小写,相信你也不会取一个超过255个字节的节名,因为哪是不充许的。每一个片段描述了文件的目标地址,快捷方式,注册设置等信息,这些都会被写入 .cab文件中。在安装时发挥作用。虽然这些带片段可以随意排放次序,安装进程只会按照按每段的名字确定这段在inf文件中的次序,但最好还是按照样例子的次序,以提高可读性。
1、内置宏字串
首先要了解的是inf文件中内置了几个固定的宏字串,这些宏字串都是指向windows mobile系统中的固定目录的。在这里两个%及中间的字被视为宏,它们指向的目录都非常的直观,也常用,给后面的配置带来了方便。%CE1% Program Files
%CE2% Windows
%CE4% WindowsStartUp
%CE5% My Documents
%CE8% Program FilesGames
%CE11% WindowsStart MenuPrograms
%CE14% WindowsStart MenuProgramsGames
%CE15% WindowsFonts
%CE17% WindowsStart Menu2、典型节介绍
下表列出了设备的 Windows CE 信息 (.inf) 文件中出现的典型节。
每节均包含特定的项,其中有些项以预定义的关键字(如 AppName)或指向其他节的指令开头。下表列出了 .inf 文件中的典型指令。
附加 .inf 文件节
对某些节(例如 DefaultInstall),您可以创建附加节以列出安装进程中所用的文件。但是,对这些节必须使用指定的语法。例如,节 DefaultInstall 中的 CopyFiles 指令指向下列多个名为 Files.Application,database,picture,urllink 的编写器命名节,该节列出了默认安装期间使用的目标文件名、源文件名和标志。
[DefaultInstall]
CopyFiles = Files.Application,database,picture,urllink
[Files.Application]
"tz.jar" ,,,0x00000001
"atz.lnk" ,,,0x00000001
……
五、 典型节实例详解
1、Version
[Version] 是必需的,可以指定应用程序的创建者和版本
[Version]
Signature = "$Windows NT$" ; 必选项。用于指定 .inf 文件对哪个操作系统有效的字符串
Provider = "xilin_am@163.com" ;在这里填上作者的大名
CESignature = "$Windows CE$"
要注意的是CESignature = "$Windows CE$"是不可以改的。
2、CEStrings
补充:软件开发 , Java ,