一、INF文件介紹
???? 1.inf文件是由一系列段組成,段的定義放在廣括號中,段名不能超過255字節,名字不區分大小寫。每一個段描述了文件的目標地址,快捷方式,注冊設置等信息,這些都會被寫入.cab文件中。各個段可以隨意排放次序。
???? 2.各段描述
??????? A.[Version]是必需的,可以指定應用程序的創建者和版本
??????????? Signature="$Windows NT$"???????????????????????????????; 必選項。用于指定 .inf 文件對哪個操作系統有效的字符串
??????????? Provider="Test"????????????????????????????????????????????????;作者的名字
????????????CESignature="$Windows CE$"?????????????????????????? ;wince平臺
??????? B.[CEStrings]必選項。指定應用程序名和默認安裝目錄的字符串替換或字符串關鍵字
???????????? CompanyName="XXXCompany"???;字符串要注意,如果字串中有空格,引號,必須在外加"",如果沒有,字串也可以不加
??????????? AppName="TestApp"
??????????? InstallDir=%CE1%\%AppName%????
??????????? 在inf文件中內置了幾個固定的 宏字串 ,這些宏字串都是指向windows mobile系統中的固定目錄。在以下兩個%之間的字就是宏。
????????????
%CE1%? ?Program Files??
???????? ??? %CE2%? ?Windows??
???????????? %CE4%? ?Windows\StartUp??
???????????? %CE5%? ?My Documents??
?????????????%CE8%? ?Program Files\Games??
???????????? %CE11%?? Windows\Start Menu\Programs??
???????????? %CE14%?? Windows\Start Menu\Programs\Games??
???????????? %CE15%?? Windows\Fonts??
???????????? %CE17%?? Windows\Start Menu
??????? C.[Strings]可選項,它用于定義一個或多個字符串關鍵字,也就是定義自己的宏字串的地方,如果項目中有用到的話,可以加上
????????????Manufacturer="Demo"
????????D.[CEDevice]可選項。指定應用程序支持或不支持的平臺,Windows CE 版本號、處理器類型值和不支持的平臺的名稱之類的信息。如果使用本機組件,則應包括為那些組件共同支持的每個處理器建立的子節,以便只將為每個處理器生成的 CAB 文件安裝到使用相應處理器的設備上。?
????????E.[SourceDisksNames]
????????????是指定源文件程序所在的磁盤路徑。
????????????1=,"cab",,"D:\oasourcedir\programe\"
??????? F.[SourceDisksFiles]
????????????就是大家要打包的源文件清單,后面的=1就表示文件的路徑,也就是[SourceDisksNames]中的1。
????????????demo.exe=1
????????????有多少個要打包的源文件都可以把名字加上即可,格式為:文件名.文件類型 = 1
??????? G.[DefaultInstall]
????????????CEShortcuts=CEShortcuts1
????????????CopyFiles=Files.Application
????????????就是安裝程序到手機中時:CopyFiles參數表示安裝時如何解壓拷貝文件,AddReg參數表示安裝時如何修改注冊表。CEShortcuts參數表示如何在Wince桌面創建快捷方式。
????????????CopyFiles=后面跟著是字段名字,即你所要做的拷貝工作到底有哪些。AddReg=作用一樣。??????例如在范本中,CopyFiles=Files.Common就是告訴cabwiz.exe要做一個拷貝文件工作,
????????????需把一些文件拷貝到安裝指定目錄文件夾下,要拷貝的文件在[Files.Common]字段中。而AddReg=RegData表示安裝程序還要修改注冊表,修改的東西在[RegData]字段中。
?????? H.[Files.Common]
????????????安裝拷貝文件到手機中,目標安裝時需要拷貝哪些文件,應該與[SourceDisksFiles]中的文件名字一致。demo.exe,demo.exe,,0
?????? I.[Shortcuts]?
????????????關于應用程序桌面快捷方式設置:
????????????Demo App,0,demo.exe,%InstallDir%
????????????字段語法說明一下,四個域,域之間用逗號隔開,前三個域的內容必須填寫。
????????????第一個域是快捷鍵名稱,也就是在Wince桌面快捷方式名稱。
????????????第二個域中0表示是文件,其他任何非零數表示為目錄,
????????????第三個域就是快捷鍵的目標程序(目錄),
????????????第四個域是可選域,是安放快捷鍵的目錄,默認目錄就是[DestinationDirs]中Shortcuts = "",你可以指定其他目錄
?????? J.[RegData]
?????????????安裝程序到手機步驟中時,修改注冊表。
????????????HKLM,SOFTWARE\Microsoft\Shell\Rai\:CallAlert,BKBitmapFile,,"\Storage\Application Data\Home\iMac\call1.jpg"?
????????????第一個“,”之前表示注冊表中的四大塊的名字,直接用縮寫就可以了,如范本中HKLM就代表HKEY_LOCAL_MACHINE,其他三個分別為HKCR,HKCU和HKU。
????????????第二個“,”之前表示你要修改的鍵的具體路徑(如果沒有會自動建立),即完整的項(key)名稱,
????????????第三個“,”之前就表示你要具體修改的鍵(就是我們經常在修改注冊表的文章中看到的Value Name),如果沒有的話程序就會自動建立,
????????????第四個“,”之前表示值類型,目前我只懂得整數是0x00010001(見補充2),字符型數據這里你就不要填了,留著個“,”就可以了。最后就是你要填入的Value。
???? 3.完整示例如下:

?2

?3

?4

?5

?6

?7

?8

?9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

?
二、CAB打包
???????INF文件寫好后,就可以用cabwiz.exe制作CAB安裝包了。可以寫一個批處理:@echo on
"D:\終端程序\項目部署\制作CAB\cabwiz.exe" "D:\終端\程序\項目部署\制作CAB\miap.inf" /dest "D:\終端\程序\項目部署\制作CAB\Cabs" /err CabWiz.PPC.log /cpu ARMV5
cabwiz.ddf、makecab.exe需與cabwiz.exe放在統一目錄
三、工具下載
??????1.?? cabwiz.exe ??
????? 2. CABManager 3.0 ? 綠色免注冊版。遇到中文快捷方式亂碼問題,可用該工具打開制作好的CAB包,然后保存即可
?????
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
