深红粗体字为注释。注:标识了(非必要)的区段在未设置信息时可以省略不写,其他区段则不可省略。 | ;编译信息开始(文件内注释用 ; 号来标识,如果PKG文件内包含双字节字符(比如中文,日文),则使用文本编辑工具保存时,必须将PKG文件编码保存为UNICODE,否则无法正常编译。)
;PKG文件头部信息--开始
;语言支持(非必要) &EN,ZH
;安装程序标题,版本号及SIS文件UID #{"Language Name 1","Language Name 2"},(UID),0,0,0,SH,NC,TYPE=SISAPP
;开发平台兼容性校验 (UID),0,0,0,{"Series60ProductID","Series60ProductID"} ;PKG文件头部信息--结束
;安装文件信息--开始
;单语言文件安装 "PCSourceFile\MyApp.app"-"MobileDestFile\MyApp.app" ;多语言文件安装(如果是单语言安装程序,则此段可省略) { "PCSourceFile\MyApp.rEN" "PCSourceFile\MyApp.rZH" }-"MobileDestFile\MyApp.rsc"
;必要组件校验(非必要) (UID),0,0,0,{"Language Name 1","Language Name 2"}
;可选附加组件(非必要) !({"Language Name 1 for Add-on 1 (20kb)"," Language Name 2 for Add-on 1 (20kb)"},{"Language Name 1 for Add-on 2 (20kb)"," Language Name 2 for Add-on 2 (20kb)"})
;条件判断(非必要,如果可选附加组件部分没有写,那么此部分也不需要写) IF option1 "PCSourceFile\addon\MyPic.gif"-"!:\System\Apps\MyApp\addon\MyPic.gif" ENDIF ;附加SIS文件(非必要) @"PCSourceFile",(0x12345678) ;安装文件信息--结束 | 语言支持
界面语言支持行,如果此行不写则取默认值&EN 一个SIS文件内可以包含多个界面语言版本,但只能安装一种语言(安装时会自动根据你的系统语言来安装相应的界面语言版本) 多个语言时用 , 分隔 多语言安装程序时不可省略界面语言支持行 ·单一语言:&ZH ·多语言:&EN,ZH
参数值 | 说明 | 参数值 | 说明 | 参数值 | 说明 | 参数值 | 说明 | AF | 荷兰语(南非) | FI | 芬兰语 | LS | 西班牙语(拉丁美洲) | SF | 法语(瑞士) | AH | 埃塞俄比亚语 | FR | 法语 | LT | 立陶宛语 | SG | 德语(瑞士) | AM | 英语(美国) | FS | 瑞典语(芬兰) | LV | 拉脱维亚语 | SQ | 阿尔巴尼亚语 | AR | 阿拉伯语 | GA | 爱尔兰语 | MK | 马其顿语 | SW | 瑞典语 | AS | 奥地利语 | GD | 盖尔人语(苏格兰) | ML | 马拉亚拉姆语(印度) | SZ | 意大利语(瑞士) | AU | 英语(澳大利亚) | GE | 德语 | MN | 蒙古语 | TA | 泰米尔语 | BE | 俄语(白俄罗斯) | GU | 古吉拉特语(印度) | MO | 摩尔多瓦语 | TC | 中文(台湾) | BF | 法语(比利时) | HE | 希伯来语 | MR | 马拉提语(摩剌陀语) | TE | 泰卢固语(印度) | BG | 保加利亚语 | HI | 印地语(印度) | MS | 马来语 | TH | 泰语 | BL | 佛兰德斯语(比利时) | HK | 中文(香港) | MY | 缅甸语 | TI | 厄立特里亚语 | BN | 孟加拉语 | HR | 克罗地亚语 | NN | 尼诺斯克语(挪威) | TK | 土库曼语 | BO | 藏语 | HU | 匈牙利语 | NO | 挪威语 | TL | 塔加拉语(菲律宾) | BP | 葡萄牙语(巴西) | HY | 亚美尼亚语 | NZ | 英语(新西兰) | TU | 土耳其语 | CA | 加泰罗尼亚语(西班牙) | IC | 冰岛语 | OS | 国际西班牙语 | VI | 越南语 | CE | 英语(加拿大) | IE | 国际英语 | PL | 波兰语 | UK | 乌克兰语 | CF | 法语(加拿大) | IF | 国际法语 | PO | 葡萄牙语 | UR | 乌尔都语 | CS | 捷克语 | IN | 印度尼西亚语 | PA | 旁遮普语(印度、巴基斯坦) | ZH | 中文 | CT | 塞浦路斯语 | IT | 意大利语 | RO | 罗马尼亚语 | ZU | 祖鲁语 | CY | 威尔士语 | JA | 日语 | RU | 俄语 | | | DA | 丹麦语 | KA | 格鲁吉亚语(土耳其) | SI | 斯里兰卡语 | | | DU | 荷兰语 | KK | 哈萨克语 | SK | 斯洛伐克语 | | | EL | 希腊语 | KM | 柬埔寨语 | SL | 斯洛文尼亚语 | | | EN | 英语(默认值) | KN | 坎拿达语(印度) | SO | 索马里语 | | | ET | 爱沙尼亚语 | KO | 韩语 | SP | 西班牙语 | | | FA | 波斯语 | LO | 老挝语 | SR | 塞尔维亚语 | | |
| 安装程序信息
以#{"RescoView","RescoView简体汉化版"},(0x11111111),4,10,0为例说明:
1. #{"RescoView","RescoView简体汉化版"}是安装程序标题 如果是单一语言的安装程序,则只写一个标题即可 如果是多语言安装程序,则需要按语言支持区段的语言顺序来依次(就是按&EN,ZH那个部分的顺序)输入各语言版本下的标题,标题名称用“,”分割 ·单一语言:#{"RescoView简体汉化版"} ·多语言:#{"RescoView","RescoView简体汉化版"}
2. (0x11111111)是SIS安装文件的UID(自定义,SIS安装文件即是安装完成后在C:\system\install\生成的相应SIS文件)
3. 4,10,0是程序安装时显示的版本号,4是主版本号,10是次版本号,0是build版本号;4,10,0在安装时显示的就是4.10
4. SH,NC是SIS文件选项(此处为非必要参数)
参数值(缩写) | 参数值(全称) | 说明 | SH | SHUTDOWNAPPS | 关闭应用程序 | NC | NOCOMPRESS | 不压缩 |
5. TYPE=SISAPP是SIS文件的类型(如果未指定,则默认为TYPE=SISAPP)
参数值(缩写) | 参数值(全称) | 说明 | SA | SISAPP | 标准的安装程序(默认值) | SY | SISSYSTEM | 此安装程序类型包含系统库或共享库文件注册(DLL或OPX文件),这些库文件在主程序卸载时会一并卸载 | SO | SISOPTION | 此安装程序类型安装时有可选组件,选择安装的组件在主程序卸载时会一并卸载 | SC | SISCONFIG | 此安装程序类型可以配置已存在的程序或服务,此类型打包时不应该包含任何新文件。只能用来配置安装或运行过程中的文件显示及增加新组件等等操作。在程序管理列表中不会显示配置程序的卸载,需要手动卸载 | SP | SISPATCH | 此安装程序类型会修复已存在的的程序,在程序管理列表中不会显示修复程序的卸载,需要手动卸载 | SU | SISUPGRADE | 此安装程序类型可以升级已存在的程序,但在程序管理列表中不会显示升级程序的卸载,需要用户手动删除文件或重新关联程序才能撤销升级 |
| 兼容性
此区段用来限制程序是否可以被正确安装在目标机型上(比如防止NOKIA Series60的软件安装在UIQ的机型上,避免造成程序错误) 以(0x101F6F88),0,0,0,{"Series60ProductID","Series60ProductID"}为例说明: 1. (0x101F6F88)是开发平台SDK的UID,也可以用具体机型的UID来限制 下表给出几个常见机型的平台UID及机型UID(由于能力问题,UID资料可能存在错误或不完全,请见谅) 以下对Symbian OS几个版本以及Series60的性能做一下概述
1.屏幕显示象素:176×208 | 2.支持Java (J2ME/MIDP 1.0)及C++开发 | 3.便于简单短周期的开发程序 | 4.提供多样性并强大的应用程序开发框架 | 5.Series60 v2.x版本提供了对Java (J2ME/MIDP 2.0)及界面主题模式的支持 | 6.Symbian OS 8.0提供了对3G网络的支持 |
SDK版本 | UID | Series60 SDK 0.9(Symbian 6.1) | Series60 SDK 2.0(Symbian 7.0) | Series60 SDK 2.0(Symbian 8.0) | 手机型号 | UID | 手机型号 | UID | 手机型号 | UID | Series60 0.9 | 0x101F6F88 | Nokia 7650 | 0x101F6F87 | Nokia 6600 | 0x101F7963 | Nokia 6630 | 0x101F7964 | Series60 1.0 | 0x101F795F | Nokia 3650/3660/3620 | 0x101F7962 | Nokia 6620 | 0x1020216B | | Series60 1.1 | 0x101F8201 | Nokia N-Gage | 0x101F8A64 | Nokia 7610 | 0x101FD5DB | Series60 1.2 | 0x101F8202 | Nokia N-Gage QD | | | Series60 2.0 | 0x101F7960 | Siemens SX1 | 0x101F9071 | Series60 2.1 | 0x101F9115 | Sendo-X | 0x101FA031 | Series60 2.2 | 0x10200BAB | BenQ P30 | 0x101FD279 | UIQ 2.0 | 0x101F617B | | UIQ 2.1 | 0x101F61CE |
2. 2,0,0是平台的版本号,2是主版本号,0是次版本号,0是build版本号,2,0,0显示的版本就是2.0 注:此处的版本号要根据UID来作相应改动。 例:如果UID是0x101F6F88(Series60 0.9),则主版本号则需要写成0,次版本号也写0即可 提示: ·如果只是希望安装在某一特定机型上(比如N-Gage),则UID处写N-Gage的UID,而平台版本处写0,0,0即可 ·如果希望安装程序能在多个机型上安装(向老版本机型兼容),则UID处写最老那个机型的平台版本的UID,平台版本号处参照上边第2条写 例:假使希望可以安装在N7650,N3650,N-Gage,N-Gage QD,N6600上,则写为(0x101F6F88),0,0,0
3. {"Series60ProductID","Series60ProductID"}是平台类型校验字符串,用来目标机器的平台类型(UIQ或Series或其他类型)
平台类型 | 字符串 | Nokia Series60 | Series60ProductID | Nokia Series80 | Series80ProductID | Nokia Series90 | Series90ProductID | UIQ 2.0 | UIQ20PlatformProductID | UIQ 3.0 | UIQ30PlatformProductID |
如果是单一语言的安装程序,则只写一个字符串即可 如果是多语言安装程序,则需要按语言支持区段的语言顺序来依次(就是按&EN,ZH那个部分的顺序)输入各语言版本下的校验字符串,字符串间用“,”分割 ·单一语言:{"Series60ProductID"} ·多语言:{"Series60ProductID","Series60ProductID"}
由于WDA上大家汉化的软件常见的只有 Nokia Series60 v1&v2 Nokia Series60 v3 UIQ v2 UIQ v3 所以如果上边的暂时不太懂的话,那就照以下两种类型情况下的例子改写即可 Nokia Series60 v1&v2 (0x101F6F88),0,0,0,{"Series60ProductID"} Nokia Series60 v3 (0x101F7961),0,0,0,{"Series60ProductID"} Nokia Series80 (0x101F8ED2),0,0,0,{"Series80ProductID"} Nokia Series90 (0x101FBE05),0,0,0,{"Series90ProductID"} UIQ 2.0 (0x101F617B),0,0,0,{"UIQ20PlatformProductID"} UIQ 3.0 (0x101F6300),0,0,0,{"UIQ30PlatformProductID"} |
|