Windows Mobile / Windows CE 裝置軟體部署,無論 J2ME、Native C++ 或 .NET CF,最終都需打包為 .cab 安裝檔。cabwiz.exe 是官方標準工具,功能強大且輕量。本文詳細說明 .inf 腳本撰寫與打包流程。
.inf 安裝腳本 (核心關鍵)cabwiz.exe app.inf 產出 app.cab[Version]
Signature = "$Windows NT$"
Provider = "xilin_am@163.com"
CESignature = "$Windows CE$"
[CEStrings]
CompanyName = "XXX公司"
AppName = "移動數據中心"
InstallDir = %CE2%\jtzst ; %CE2% = Program Files
[DefaultInstall]
CopyFiles = Files.Application, database, picture, urllink
CEShortcuts = Shortcuts
[SourceDisksNames]
1 = ,"txt",,. ; 當前目錄
2 = ,"ShortCut",,. ; 當前目錄
3 = ,"LIB",,. ; 當前目錄
4 = ,"db",,.\jtzdb ; 子目錄 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
... (其他資料庫檔案)
isyncprefs = 4
[DestinationDirs]
Files.Application = 0,%InstallDir% ; \Program Files\jtzst
Shortcuts = 0,%InstallDir% ; 同前
database = 0,. ; 根目錄
picture = 0,%CE5%\個人 ; \My Documents\個人
urllink = 0,%CE2%\收藏夾 ; \Program Files\收藏夾
特殊資料夾常數: %CE1%=\Windows, %CE2%=\Program Files, %CE5%=\My Documents
[Shortcuts]
atz.lnk,0,"移動數據中心" ; 檔案, 目標索引, 顯示名稱
cabwiz.exe app.inf /dest output_folder /cpu ARM /compress
/cpu ARM:目標 CPU 架構 (x86/MIPS/SH3/ARM)/compress:啟用壓縮/dest:輸出目錄jtzdb 子目錄,便於備份與升級SignTool.exe 簽署 .cab,通過裝置安全策略[DefaultInstall]
AddReg = MyRegKeys
[MyRegKeys]
HKLM,Software\MyApp,InstallPath,,%InstallDir%
HKCU,Software\MyApp,FirstRun,0x00010001,1 ; DWORD
掌握 .inf 腳本結構,即掌握 Windows Mobile 部署的核心鑰匙。