根據以下幾篇
http://www.pczone.com.tw/post/1078509/7/
http://www.pczone.com.tw/post/1078510/8/
http://bbs.wmzhe.com/viewthread.php?tid=17580&rpid=147152&ordertype=0&page=1#pid147152
http://www.msfn.org/board/topic/44639-sfxcabexe/
http://hi.baidu.com/wd12aa/blog/item/53e835c72ce6cb1c9d163d7d.html
修正部分錯誤以及補上圖片
製作出的教學
目前Internet Explorer 8好像有6個修正
其中
IE8-WindowsXP-KB978207-x86-CHT可以直接用
IE8-WindowsXP-KB2360131-x86-CHT取代
IE8-WindowsXP-KB971961-x86-CHT可以直接用
IE8-WindowsXP-KB976662-x86-CHT取代
此外會使用到此篇的壓縮cab工具
http://hi.baidu.com/long200259/blog/item/34f23058cf384b91810a186c.html
_______________文章開始______________________
整個步驟基本流程如下
IE8 在大陸的封裝集成法,很不錯.
1.先將主程式和補丁拆解
2.再將最新文件置換主程式中
3.破解update.exe
4.再封裝為IE8.CAB
5.截取IE8壓縮檔頭.
6.將IE8.CAB和IE8壓縮檔頭合併.
如此一來,可得到和官方一樣之檔案.
安裝參數完全一樣.
而且不喜歡還可以在控制台內新增移除功能,把IE8移除.
引用自http://www.pczone.com.tw/post/1078509/7/
因此首先得先取得CAB自解檔案的檔頭部分
這部分參考
http://www.msfn.org/board/topic/44639-sfxcabexe/
How to creat SFXCAB file.
1. Hex edit one update file. Delete after MSCF part. So u have sfx module. lets name it cab.sfx
2. Compress all folder or files with make cab. lets name it files.cab
3. copy /b cab.sfx+files.cab files.exe
4. Hex edit to run files after extract. For example. u want to run setup.exe
Search setup.exe in files.exe.
There is 20 00 in front of setup.exe
Chance it to 60 00.
所以開啟HEX軟體 (以WINHEX為例)
1.開啟WINHEX然後開啟從網路下載的IE8-WindowsXP-x86-CHT.EXE
http://www.pczone.com.tw/attachment.php?attachmentid=21133&d=1290669023
2.搜尋cab檔案的關鍵字"MSCF" <---- 這裡有一個隱藏點
PS.請搜尋到 '第3個' MSCF 或者 中文版(正簡都一樣)直接搜尋 'PADDINGMSCF'
http://www.pczone.com.tw/attachment.php?attachmentid=21134&stc=1&d=1290669143
http://www.pczone.com.tw/attachment.php?attachmentid=21135&stc=1&d=1290669187
3.選取MSCF開頭 ---> 可使用快速鍵alt+1
http://www.pczone.com.tw/attachment.php?attachmentid=21136&stc=1&d=1290669187
4.選取檔案結尾 ---> 可使用快速鍵alt+2
http://www.pczone.com.tw/attachment.php?attachmentid=21137&stc=1&d=1290669187
5.按下del刪除選擇的區塊
http://www.pczone.com.tw/attachment.php?attachmentid=21138&stc=1&d=1290669187
6.選擇另存新檔 將cab自解檔的檔頭保留下來
http://www.pczone.com.tw/attachment.php?attachmentid=21139&stc=1&d=1290669187
http://www.pczone.com.tw/attachment.php?attachmentid=21140&stc=1&d=1290669479
7.確認存下來的cab自解檔的檔頭大小是正確的
cab.sfx滑鼠右鍵-內容
http://www.pczone.com.tw/attachment.php?attachmentid=21141&stc=1&d=1290669479
IE8-WindowsXP-x86-CHT.EXE滑鼠右鍵-內容
http://www.pczone.com.tw/attachment.php?attachmentid=21142&stc=1&d=1290669479
確定IE8-WindowsXP-x86-CHT.EXE自解部分與cab.sfx大小吻合都是40448
http://www.pczone.com.tw/attachment.php?attachmentid=21143&stc=1&d=1290669479
贊助商連結
8.接下來將IE8-WindowsXP-x86-CHT用WinRAR解壓縮
http://www.pczone.com.tw/attachment.php?attachmentid=21144&stc=1&d=1290671210
9.分別點選IE8的4個hotfix 或 把hotfix用指令解壓到TEMP資料夾
IE8-WindowsXP-KB976662-x86-CHT
IE8-WindowsXP-KB981332-x86-CHT
IE8-WindowsXP-KB2360131-x86-CHT
IE8-WindowsXP-KB2362765-x86-CHT
http://www.pczone.com.tw/attachment.php?attachmentid=21145&stc=1&d=1290671210
10.將解出的hotfix修正檔案 取代到IE8-WindowsXP-x86-CHT資料夾內
http://www.pczone.com.tw/attachment.php?attachmentid=21146&stc=1&d=1290671210
http://www.pczone.com.tw/attachment.php?attachmentid=21147&stc=1&d=1290671210
11.使用MCab.bat將IE8-WindowsXP-x86-CHT資料夾壓縮成IE8-WindowsXP-x86-CHT.cab
http://www.pczone.com.tw/attachment.php?attachmentid=21148&stc=1&d=1290671210
http://www.pczone.com.tw/attachment.php?attachmentid=21149&stc=1&d=1290671210
http://www.pczone.com.tw/attachment.php?attachmentid=21150&stc=1&d=1290671210
http://www.pczone.com.tw/attachment.php?attachmentid=21151&stc=1&d=1290671445
12.使用copy指令將cab.sfx與IE8-WindowsXP-x86-CHT.cab合併成一個自解檔
http://www.pczone.com.tw/attachment.php?attachmentid=21152&stc=1&d=1290671445
copy /b cab.sfx+IE8-WindowsXP-x86-CHT.cab IE8-WindowsXP-x86-CHT.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21153&stc=1&d=1290671445
13.使用hex軟體 編輯產生的IE8-WindowsXP-x86-CHT.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21154&stc=1&d=1290671445
14.搜尋關鍵字update ---->實際上應該是搜尋update/update.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21155&stc=1&d=1290671445
http://www.pczone.com.tw/attachment.php?attachmentid=21156&stc=1&d=1290671210
15.搜尋到update/update.exe位址處 往前4位將20 00改為60 00
http://www.pczone.com.tw/attachment.php?attachmentid=21157&stc=1&d=1290671210
http://www.pczone.com.tw/attachment.php?attachmentid=21158&stc=1&d=1290671210
16.將編輯過的IE8-WindowsXP-x86-CHT.exe存檔
http://www.pczone.com.tw/attachment.php?attachmentid=21159&stc=1&d=1290671210
17.執行IE8-WindowsXP-x86-CHT.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21160&stc=1&d=1290673229
:(:(:(:(:o:o:eye::eye::cry::cry::boldred::boldred:
失敗了
why
下面解答
上面失敗的原因如下
重新分析一下原始文章
http://www.msfn.org/board/topic/44639-sfxcabexe/
How to creat SFXCAB file.
1. Hex edit one update file.
再看一下
簡體版的參考文章
http://bbs.wmzhe.com/viewthread.php?tid=17580&rpid=147152&ordertype=0&page=1#pid147152
因此emoom的說法可能部分有誤 或者 是我軟體與做法弄錯
IE8 在大陸的封裝集成法,很不錯.
5.截取IE8壓縮檔頭.
6.將IE8.CAB和IE8壓縮檔頭合併.
如此一來,可得到和官方一樣之檔案.
安裝參數完全一樣.
而且不喜歡還可以在控制台內新增移除功能,把IE8移除.
引用自http://www.pczone.com.tw/post/1078509/7/
因此再測試一次
這次來仔細推敲英文原始的意思
one update file 是否指的是hotfix檔案 ?
再看一下簡體文章
用WinHex 编辑一个Windows的更新程序
好像真的是hotfix檔案 ?
用一個hotfix內容來看看----以IE8-WindowsXP-KB976662-x86-CHT為例
http://www.pczone.com.tw/attachment.php?attachmentid=21161&stc=1&d=1290677418
http://www.pczone.com.tw/attachment.php?attachmentid=21171&stc=1&d=1290677418
再來看看IE8-WindowsXP-x86-CHT.exe的內容
http://www.pczone.com.tw/attachment.php?attachmentid=21170&stc=1&d=1290677418
http://www.pczone.com.tw/attachment.php?attachmentid=21169&stc=1&d=1290677418
可以發現2個不太一樣
IE8-WindowsXP-KB976662-x86-CHT還有寫明Intstaller Engine
回到簡體文章
找到你需要在解压完文件后运行的程序,例如 update\setup.exe
所以這邊大致推測是用hotfix的檔頭
所以步驟繼續
同樣的用hex軟體開啟IE8-WindowsXP-KB976662-x86-CHT.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21168&stc=1&d=1290677418
搜尋mscf
http://www.pczone.com.tw/attachment.php?attachmentid=21167&stc=1&d=1290677418
選取mscf後面的部分
http://www.pczone.com.tw/attachment.php?attachmentid=21166&stc=1&d=1290677418
http://www.pczone.com.tw/attachment.php?attachmentid=21165&stc=1&d=1290677418
刪除後面的部分
http://www.pczone.com.tw/attachment.php?attachmentid=21164&stc=1&d=1290677418
另存成cab.sfx
http://www.pczone.com.tw/attachment.php?attachmentid=21163&stc=1&d=1290677418
比較cab.sfx檔案大小是否正確
http://www.pczone.com.tw/attachment.php?attachmentid=21162&stc=1&d=1290677418
http://www.pczone.com.tw/attachment.php?attachmentid=21172&stc=1&d=1290677418
然後一樣使用copy指令將cab.sfx與IE8-WindowsXP-x86-CHT.cab合併成一個自解檔
http://www.pczone.com.tw/attachment.php?attachmentid=21152&stc=1&d=1290671445
copy /b cab.sfx+IE8-WindowsXP-x86-CHT.cab IE8-WindowsXP-x86-CHT.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21153&stc=1&d=1290671445
使用hex軟體 編輯產生的IE8-WindowsXP-x86-CHT.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21154&stc=1&d=1290671445
搜尋關鍵字update ---->實際上應該是搜尋update/update.exe ?
http://www.pczone.com.tw/attachment.php?attachmentid=21155&stc=1&d=1290671445
http://www.pczone.com.tw/attachment.php?attachmentid=21156&stc=1&d=1290671210
搜尋到update/update.exe位址處 往前4位將20 00改為60 00
http://www.pczone.com.tw/attachment.php?attachmentid=21157&stc=1&d=1290671210
http://www.pczone.com.tw/attachment.php?attachmentid=21158&stc=1&d=1290671210
將編輯過的IE8-WindowsXP-x86-CHT.exe存檔
http://www.pczone.com.tw/attachment.php?attachmentid=21159&stc=1&d=1290671210
執行IE8-WindowsXP-x86-CHT.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21173&stc=1&d=1290679313
解壓縮後
http://www.pczone.com.tw/attachment.php?attachmentid=21174&stc=1&d=1290679313
怎麼要iesetup.exe
why
:(:(:(:(:o:o:eye::eye::cry::cry::boldred::boldred:
下面解答
上面說他要用iesetup安裝
只好再用hex軟體編輯IE8-WindowsXP-x86-CHT.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21154&stc=1&d=1290671445
搜尋關鍵字update/iesetup.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21175&stc=1&d=1290679963
搜尋到update/iesetup.exe位址處 往前4位將20 00改為60 00
http://www.pczone.com.tw/attachment.php?attachmentid=21176&stc=1&d=1290679963
http://www.pczone.com.tw/attachment.php?attachmentid=21177&stc=1&d=1290679963
把之前改的update/update.exe位址處 往前4位將60 00改回20 00
http://www.pczone.com.tw/attachment.php?attachmentid=21178&stc=1&d=1290679963
http://www.pczone.com.tw/attachment.php?attachmentid=21179&stc=1&d=1290679963
將IE8-WindowsXP-x86-CHT.exe存檔
http://www.pczone.com.tw/attachment.php?attachmentid=21180&stc=1&d=1290679963
執行IE8-WindowsXP-x86-CHT.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21182&stc=1&d=1290679963
http://www.pczone.com.tw/attachment.php?attachmentid=21181&stc=1&d=1290679963
成功了?
只能算是成功了80%
1.目前沒有辦法把hotfix內reg修正的部分加入
一但變更update.inf來加入hotfix的reg修正
會有驗證問題
2.文章內提到要使用update.exe當作安裝引擎來安裝
但目前還是使用iesetup.exe來安裝
還在想辦法中
1.IE8正式版的cab自解部分可能有加上驗證
可是目前缺少IE8_BETA時期的安裝檔案可以驗證此推論
不過改提取IE7正式版cab自解部分
效果如同從一般hotfix中提取出來的cab自解部分
都可以讓IE8重新封包可以安裝
2.查詢google過去文章有提到使用updata.exe安裝的部分
是在IE7時代 IE7開始時需要WGA驗證通過才可以安裝
但是剛時有人修改iecustom.dll繞過驗證達到可以安裝IE7
因此以下使用IE7_BEAT時代的iecustom.dll (版本7.0.5299.0)
放入IE8內測試
出現以下裝況
http://www.pczone.com.tw/attachment.php?attachmentid=21193&stc=1&d=1291105771
http://www.pczone.com.tw/attachment.php?attachmentid=21194&stc=1&d=1291105771
http://www.pczone.com.tw/attachment.php?attachmentid=21195&stc=1&d=1291105771
http://www.pczone.com.tw/attachment.php?attachmentid=21196&stc=1&d=1291105771
http://www.pczone.com.tw/attachment.php?attachmentid=21197&stc=1&d=1291105771
3.改使用IE7正式版的iecustom.dll (版本7.0.5730.13)
放入IE8內測試
出現以下裝況
http://www.pczone.com.tw/attachment.php?attachmentid=21198&stc=1&d=1291105771
http://www.pczone.com.tw/attachment.php?attachmentid=21199&stc=1&d=1291105771
http://www.pczone.com.tw/attachment.php?attachmentid=21200&stc=1&d=1291105771
http://www.pczone.com.tw/attachment.php?attachmentid=21193&stc=1&d=1291105771
http://www.pczone.com.tw/attachment.php?attachmentid=21201&stc=1&d=1291105771
這2種出現的畫面都顯示 其實是調用ie7的安裝核心來安裝ie8
所以目前可以知道要改使用updata.exe程序安裝IE8可能
1.beta版的ie8才可行
2.修改iecustom.dll 的某部分
emoom
2010-12-03, 12:03 PM
我的步驟沒有錯, 看來你只找到破解update.exe的方法,沒找到修改 update.inf方式.
ex.
[Version]
;MOD
; CatalogFile = %SP_SHORT_TITLE%.cat
CatalogFile = ie8.cat, KB976662-IE8.CAT,KB981332-IE8.CAT,KB2360131-IE8.CAT,KB2447568-IE8.CAT
[Configuration]
AppFileInUseDetect = 7
;MOD
; CustomizationDLL = iecustom.dll
;MOD
; UninstallCustomizationDLL = update\iecustom.dll
[ProductCatalogsToInstall]
;MOD
; %SP_SHORT_TITLE%.cat,update\%SP_SHORT_TITLE%.cat
ie8.cat,update\ie8.cat
我的步驟沒有錯, 看來你只找到破解update.exe的方法,沒找到修改 update.inf方式.
[Configuration]
AppFileInUseDetect = 7
;MOD
; CustomizationDLL = iecustom.dll
多謝emoom兄提供
我這幾天就是在推論是哪個檔案引導使用iesetup.exe去安裝ie8的
有推測到跟iecustom.dll有關聯
也有猜想到可能是inf或cab檔案內有關
多謝emoom兄的提供
要改用update.exe安裝就是要去除iecustom.dll部分
所以註解掉 ; CustomizationDLL = iecustom.dll
17.執行IE8-WindowsXP-x86-CHT.exe
http://www.pczone.com.tw/attachment.php?attachmentid=21160&stc=1&d=1290673229
:(:(:(:(:o:o:eye::eye::cry::cry::boldred::boldred:
失敗了
why
下面解答找到問題點
ie8的sfxcab為6.3.15.0
與6.3.13.0版本一樣
有些微的驗證?
不過搜尋rsrc後
於後面第15位為01
將數值修改為 00
這樣就pass過檢驗