第二步:記下該文件名,然后使用Msidb將這個cab文件提取出來了,將剛才另存出來的msi文件和msidb.exe文件拷貝到C盤根目錄下,再選擇“開始→運行”,在里邊輸入“cmd”,回車后打開命令行輸入窗口,輸入幾次“cd..”,定位到C盤根目錄下,然后輸入命令“msidb.exe -x data.cab -d 2.msi”,即可將msi文件中的cab文件解壓縮出來。
第三步:在C盤的根目錄下建立一個文件夾,如“files”,然后在命令行提示窗口中輸入“expand data.cab -F:* files”,將“data.cab”解壓縮到“files”文件夾中(解壓完成后將data.cab刪除),將RemotelyAnywhere的補丁文件拷貝到該文件夾中,覆蓋原來該文件夾中的文件。
第四步:通過上邊的步驟,我們已經(jīng)將補丁文件放到了軟件的安裝包中。我們還需要將這個安裝包重新打包成cab文件,打包需要使用工具CabArc,將cabarc.exe拷貝到C盤根目錄下,然后在命令行提示窗口中輸入“cabarc.exe -m LZX:21 -r N data.cab "files\*"”,將剛才我們修改過的安裝文件重新打包成data.cab。
我們還需要將這個cab壓縮包重新寫回到msi文件中,還是在命令行提示符窗口中,輸入“msidb.exe -a data.cab -d 2.msi”,稍等片刻后即可看到加載成功的提示信息。
第五步:我們不僅可以把補丁包加入到安裝文件中,還可以將軟件序列號添加到安裝包中,還是用Orca打開msi文件,選擇左側的“Registry”,然后再右側的空白處單擊鼠標右鍵,選擇“Add Row”(快捷鍵Ctrl+R),然后輸入以下字段(見圖3):
[Registry] REGISTRY_LICENSE
[Root] 2
[Key] Software\RemotelyAnywhere\V5
[Name] License
[Value]
[Component] Service_Files
其中Value中的內容就是你的軟件序列號。設置完成后,選擇保存退出即可。
小提示:
MSI文件中包含有對安裝程序的描述,涉及到軟件安裝界面、使用的文件、快捷方式、INI文件、注冊表、版本和反安裝信息等。
在本例中我們的補丁升級工作是通過替換原來的文件實現(xiàn)的,如果補丁升級是通過一個額外的文件,你需要首先將這些文件加入到cab包中,然后再用Orca打開msi文件,分別選擇左側的FeatureComponents和File字段,在里邊將這個補丁文件的名稱加入即可。