史萊姆論壇

返回   史萊姆論壇 > 教學文件資料庫 > 作業系統操作技術文件
忘記密碼?
論壇說明 標記討論區已讀

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


 
 
主題工具 顯示模式
舊 2003-12-12, 01:39 PM   #1
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 installshield 3.x壓縮包操作及修正程序詳解

一.目標:
操作installshield 3.x的壓縮包,對其進行檢視,釋放及修改.

二.用到的工具:
1.icomp.exe 用於操作installshield 3.x的壓縮包
2.winhex 用於修正installshield 壓縮包操作程序中的某些錯誤.

三.操作程序:

-------------------------------installshield 3.x壓縮包操作程序---------------------------
1.icomp.exe 的常用參數及用途.
用法: icomp path\input path\output [pathinlib] -Options
參數:
-c (預設) 壓縮目標文件.
-d 對壓縮包中的文件進行解壓縮.
-dt 測試解壓縮程序.
-r 移除壓縮包中的一個文件
-i 包含子資料夾.
-l 檢視壓縮包中的文件列表.

2.對文件進行檢視和解壓縮
一般而言,首先確定安裝文件是否採用installshield 3.x,可以通過檢視setup.exe的內容就可以確定.
它的壓縮檔案一般為資料夾中最大的那一個文件.
例:在資料夾中_setup.1是其壓縮包.
icomp _setup.1 -l (可檢視壓縮包內的檔案名)

日期 時間 原始大小 內容 壓縮後大小 文件組及檔案名
======== ===== ======== ==== ======== ====
07-29-98 18:00 127488 A___ 35376 Group1\Dsetup.dll
07-24-98 15:10 300032 A___ 146493 Group1\gbm.dll

.................

05-28-01 15:10 28672 A___ 7208 Group7\InsSetStu.exe<---如果壓縮包中有大於8.3命名規則的檔案名,則在解壓和再壓縮中會產生檔案名被轉為8.3命名規則.這是要進入修正.
................

icomp _setup.1 -d -i 可以對壓縮包文件進行釋放
可以看到壓縮包內文件已經釋放到了當前資料夾中Group1等子資料夾中.開啟Group7資料夾,可以看到超過8.3命名規則的檔案名變成了Inssetst.exe .

3.對文件進行再壓縮及檔案名的修正.
icomp *.* _setup.1 -i 可以對當前資料夾中的文件帶子資料夾進行壓縮.(注:如果壓縮前已經存在_setup.1,則壓縮會出錯),壓縮完成後,還要對壓縮包內的長檔案名進行修正.


用winhex開啟新產生的壓縮包_setup.1 在文件尾,可以看到壓縮包內的各檔案名,找到需要修正的文件.


該值指明檔案名的長度

004B7710 00 BC 2A 57 79 20 00 00 00 37 00 00 00 00 00 0C .?Wy ...7......
004B7720 49 4E 53 53 45 54 53 54 2E 45 58 45 00 00 00 01 INSSETST.EXE.... <---這是需要修正的文件
004B7730 00 01 00 00 00 00 00 00 00 00 0C 00 00 40 00 00 .............@..
004B7740 A9 08 00 00 B2 BD 42 00 3C 28 BC 6D 20 00 00 00 ?..步B.<(糾 ...
004B7750 36 00 00 00 00 00 0B 44 45 46 41 55 4C 54 2E 50 6......DEFAULT.P
004B7760 54 4D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 TM..............
004B7770 0C 00 00 60 00 00 DC 09 00 00 5B C6 42 00 AF 2A ...`..?..[艬.?

對上圖中,可以看到,要修正檔案名,需要改動2個地方,第一將檔案名前的字元的指改為增加長度後的值,然後在檔案名需要增加的地方,插入所需的字元數.修正後如下.



004B7710 00 BC 2A 57 79 20 00 00 00 37 00 00 00 00 00 0D .?Wy ...7......
004B7720 49 4E 53 53 45 54 53 54 55 2E 45 58 45 00 00 00 INSSETSTU.EXE...
004B7730 01 00 01 00 00 00 00 00 00 00 00 0C 00 00 40 00 ..............@.
004B7740 00 A9 08 00 00 B2 BD 42 00 3C 28 BC 6D 20 00 00 .?..步B.<(糾 ..
004B7750 00 36 00 00 00 00 00 0B 44 45 46 41 55 4C 54 2E .6......DEFAULT.
004B7760 50 54 4D 00 00 00 00 00 00 00 00 00 00 00 00 00 PTM.............
004B7770 00 0C 00 00 60 00 00 DC 09 00 00 5B C6 42 00 AF ....`..?..[艬.

長檔案名問題通過修正後,壓縮包就可以正常被使用了.
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
 


主題工具
顯示模式

發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


所有時間均為台北時間。現在的時間是 01:33 AM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1