|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
|
主題工具 | 顯示模式 |
2006-04-04, 04:15 PM | #1 |
榮譽會員
|
安裝程序 Repack 攻略 之 CAB 篇
某些情況下我們需要對軟體的安裝程序包進行修改,取代其中的部分文件,也就是所謂 Repack。
本文討論採用.CAB壓縮包的安裝程序的拆解打包,主要是搜集工具,使用方法除了Install Shield的高版本描述稍多外,其他均為圖形介面程序,所以描述相對簡略,也沒有截圖(主要是因為我比較懶*^_^*)。 以下內容均系本人日常實踐(Repack過的軟體有Symantec Ghost 7.5 中文版、Dr.eye 2005 專業版、智能狂拼III.3 專業版等),草草歸納,不當之處,敬請指正。 CAB 格式分類 ·LZCAB 採用LZX編碼壓縮的CAB包,一般見於 Freeware ·MSCAB 微軟格式的CAB包,一般於微軟的程序,Symantec Ghost 7.5 安裝程序也採用此格式。 ·ISCAB InstallShield製作的安裝包中使用,特徵是同時存在一個.hdr文件 LZCAB 拆解 ·解壓 使用WinRAR即可解壓 ·壓縮 使用CabPack打包,Compression Options選項 LZX MSCAB 拆解 ·解壓 使用WinRAR即可解壓 ·壓縮 使用CabPack打包,Compression Options選項 MSZIP ISCAB 拆解 InstallShield 的資料包一般格式為 data1.cab,同時有一個 data1.hdr,用於描述文件分組定義,如果文件較多,還會存在一個 data2.cab ,實際上是分割壓縮包。 ISCAB 6.0 以下的版本可以使用 ZIPSCAN 解壓,也可以使用 WinPack 進行文件的抽取和取代、增加。 高版本的 ISCAB 可使用 InstallShield 中提供的指令行工具進行操作,以InstallShield X為例,安裝InstallShield X後,從安裝目錄下的.\system中抽取以下文件: 程式碼: ISCAB.exe ISTools.dll MediaBuild40.dll 之後可以脫離 InstallShield 執行。 * 為省去安裝 InstallShield 的麻煩,我已將抽取的文件打包為 iscabX.zip 作為附件上傳。 ·首先要抽取安裝包結構訊息,使用指令行 ISCAB data1.cab -lx -iCAB.INI 將訊息輸出到 CAB.INI 文件,大致如以下的格式: 程式碼: [ISCAB Info] Product=ISCAB Version=2.0 [Dat Files] File1="Setup.dll" ... ·如果要從包中移除某些文件或者取代文件(也要先移除,然後再重新加入),應編輯匯出的 CAB.INI 文件,僅保留頭部描述段([ISCAB Info])和要移除的文件描述(注意,文件所在的組描述應保留,如 [Dat Files]),將編輯後的文件另存為 DEL.INI,使用指令行 ISCAB data1.cab -r -iDEL.INI ·如果要向包中增加文件,應將相應文件放置在當前目錄下,同時和 data1.cab 同目錄下的 setup.inx,setup.ini 等文件都必須存在。編輯匯出的 CAB.INI 文件,僅保留頭部描述段([ISCAB Info])和要加入的文件描述(注意,文件所在的組描述應保留,如 [Dat Files]),將編輯後的文件另存為 ADD.INI,使用指令行 ISCAB data1.cab -a -iADD.INI 好了,安裝文件打包完成了,就像「原裝」的一樣,簡單吧? lz 和mscab 都可以用xp 原有的的makecab 來製作 附件 CABrepackKIT.zip 中包括 CABpack.zip WinPack.zip iscabX.zip |
__________________ |
|
送花文章: 3,
|