通常
如果不借助其他工具
當對微軟系統安裝多個熱修復補丁程序
也就是hotfixes時
多個hotfixes的安裝必須要遵從一定的次序
而且在每個hotfixes安裝後
都必須重新啟動計算機
這無疑是非常費心費時的工作
但是有了Qchain這個軟件
一切變得輕松簡單起來
系統管理員
打
補丁的經常性工作將快捷而准確
一
什麼是熱修復補丁程序?
首先請大家熟悉一下微軟產品的補丁程序分類
微軟公司的產品補丁分為
類
SP(Service Pack)和HotFixes
SP是集合一段時間發布的HotFixes的大補丁
一般稱為SP補丁程序
命名規則為SP
SP
一段時間才發布一次
HotFixes是小補丁
一般稱為熱修復補丁程序
它位於當前SP和下一個SP之間
是為解決微軟網站上最新安全告示(Security bulletin)中的系統漏洞而發布的
命名規則為
MS年份
序號
比如MS
表示
第
個HotFixes
了解了這些概念
我們就會明白
存在為系統在一個時間內安裝多個熱修復補丁程序的實際環境需求
二
不使用Qchain
exe一次安裝多個Hotfixes的風險
安裝hotfixes時
如果要替換的文件被占用
那麼新文件將被另外存放並被記錄在注冊表的未決文件重命名隊列(Pending File Rename queue)鍵值中
等下一次重新啟動計算機後再執行替換操作
根據這個特點
如果一次安裝多個hotfixes而不在每個安裝後重新啟動計算機
就會存在一定的問題
我們來看一個例子
安裝hotfixes A 和hotfixes B
每次安裝後不重新啟動計算機
個hotfixes中都包含文件X
hotfixes A的文件X版本為
hotfixes B的文件X版本為
計算機中的文件X當前版本為
首先安裝hotfixes A
由於計算機中的文件X被占用
hotfixes A的文件X被記錄在注冊表的未決文件重命名隊列鍵值中
然後安裝hotfixes B
結果是hotfixes B的文件X被記錄在注冊表的未決文件重命名隊列鍵值中
最後重新啟動計算機
因為hotfixes B最後安裝
它的文件X版本
最終替換替換了計算機中的文件X版本
顯然
這不是我們所期望的結果
三
下載Qchain
exe
我們可以微軟網站的下列地址下載文件Qchain
exe
?ReleaseID=
雙擊下載的Exe文件
解壓縮出Qchain
exe
四
使用Qchain
exe鏈接多個hotfixes安裝
Qchain
exe的使用非常簡單
語法是qchain [logfilename]
logfilename表示日志文件名
它記載了多個補丁安裝前後的注冊表中未決文件重命名隊列鍵值的對比
實際上
QChain
exe的功能就是檢查注冊表的未決文件重命名隊列鍵值
對多個hotfixes的安裝文件進行合適的鏈接和取捨操作
最終保證被修改文件是最新版本
下面我們來具體看看如何使用Qchain
exe對多個hotfixes安裝進行鏈接
首先從微軟網站的安全子站下載要安裝的hotfixes文件
這裡假設有
個
分別為hfa
exe
hfb
exe
hfc
exe
hotfixes
exe文件具有多個可選參數
z表示安裝後不重新啟動計算機
m表示安裝過程中不出現提示信息
如果使用Windows XP
/Q表示安裝過程中不出現提示信息
所以
分別執行以下命令
hfa –z
hfb –z
hfc –z
上述命令全部運行完畢後
執行QChain
exe
它將檢查注冊表的未決文件重命名隊列鍵值
對hfa
hfb
hfc的安裝文件進行合適的鏈接
取捨等操作
最終保證被修改文件是最新版本
重新啟動計算機
下面是執行Qchain後的一個實際輸出信息例子
Old Information In The Registry
Source:C:\WINNT\inf\acpi
inf
Version:
Destination:d:\ntsust\testregchech\
inf
Version:
Source:C:\WINNT\inf\adm_mult
inf
Version:
Destination:d:\ntsust\testregchech\
inf
Version:
Source:C:\WINNT\inf\banshee
inf
Version:
Destination:d:\ntsust\testregchech\
inf
Version:
New Information In The Registry
Source:C:\WINNT\inf\adm_mult
inf
Version:
Destination:d:\ntsust\testregchech\
inf
Version:
五
Qchain
exe的不足
對於大多數的Windows NT hotfixes和Windows
hotfixes
Qchain都能夠很好地進行安裝文件的鏈接
取捨處理
但是當hotfixes中包含如下注冊表鍵值所示的二進制文件時
就有可能發生問題
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\KnownDLLs
這個注冊表鍵值下所列的二進制文件在系統啟動時將被裝載進內存
當調用GetFileVersionInfo函數獲取其中某個文件的版本信息時
得到的將是內存中的文件版本號
而不是實際路徑下的文件版本號
這樣
在使用Qchain
exe時就有可能達不到最終的目的
遇到這種情況時
為了確保最後結果的正確
我們可以做的就是
在每個hotfixes安裝後都重新啟動計算機
From:http://tw.wingwit.com/Article/Fault/201311/10421.html