本文討論管理員如何將使用 Update.exe 的 Windows 軟件更新與它們的 Windows 安裝源文件集成起來。(軟件更新包括重要更新、功能包、修補程序、安全更新、Service Pack、更新和累積更新。)如果安裝是從管理員創(chuàng)建的 Windows 分發(fā)文件夾中進行的,而管理員必須在安裝期間應(yīng)用一個或多個軟件更新,則這些過程可能會很有用。如果您要集成安全更新,以便在新的安裝啟動時不會受到病毒感染,則這些過程也很有用。
注意:- 如果軟件更新不使用 Update.exe 作為安裝程序,則這些過程不適用。例如,有些 Microsoft Windows 2000 和 Microsoft Windows XP 的 Microsoft Internet Explorer 更新使用基于 INF 的安裝而不使用 Update.exe。因此,您無法使用這些過程來集成這些 Windows 2000 或 Windows XP 的 Internet Explorer 更新。
- 如果您使用這些過程集成軟件更新,則系統(tǒng)不會正確創(chuàng)建
Filelist
注冊表項。例如,如果您將 824146 安全修補程序集成到 Microsoft Windows Server 2003 安裝源文件中,則系統(tǒng)不會正確創(chuàng)建下面的注冊表項:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Updates\Windows Server 2003\SP1\KB824146\Filelist
- 當(dāng)您使用這些過程中的任何一個集成更新時,會在“添加或刪除程序”控制面板中為每個更新添加一個條目。但是,“刪除”按鈕是不可用的,因為如果刪除了更新,則經(jīng)過更新的文件沒有可供還原的早期版本。
- 如果以下條件同時成立,管理員可能還必須對 Microsoft Windows 預(yù)安裝環(huán)境 (Windows PE) 應(yīng)用軟件更新:
- 管理員使用 Windows PE 運行 Windows 安裝程序。
- 管理員使用網(wǎng)絡(luò)共享上已經(jīng)集成了軟件更新的操作系統(tǒng)。
有關(guān)具體操作方法的更多信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應(yīng)的文章:828217 如何將 824146 安全修補程序應(yīng)用于 Windows Preinstallation Environment
- 本文中的說明也可用于基于遠程安裝服務(wù) (RIS) RISETUP 的映像。RISETUP 映像的 I386 目錄結(jié)構(gòu)和網(wǎng)絡(luò)分發(fā)文件夾一樣。對于 RIPREP 映像,請將映像“拉入”客戶機,安裝軟件更新,然后通過 RIPREP 方式將映像放回服務(wù)器。
- 在使用這些過程來防止感染病毒時,我們建議您僅集成無需用戶操作的軟件更新。如果您集成的軟件更新不會阻礙 Windows 安裝程序的完成,請使用 Unattend.txt 文件中的“[guirunonce]”節(jié),或在完成安裝后使用軟件更新服務(wù) (SUS) 來部署更新。
- 此過程專為全新安裝而設(shè)計,不適用于升級安裝。
注意:僅 Windows XP Home Edition 和 Windows XP Professional Edition 支持集成 Service Pack。Windows Media Center Edition 不支持集成 Service Pack。
“Update.exe 5.4.15.0 或更高版本”部分描述了集成使用 Update.exe 5.4.15.0 版或更高版本的軟件程序包的過程?!癠pdate.exe 的早期版本”部分描述了集成使用早期版本 Update.exe 的軟件程序包的過程。
要確定軟件更新程序包是否使用 Update.exe 5.4.15.0 版或更高版本作為安裝程序,請按照下列步驟操作:
- 將軟件更新程序包解壓縮到一個唯一的臨時文件夾中。例如,要將名為 KBArticleNumber.exe 的更新程序包文件解壓縮到驅(qū)動器 C 上名為 ExtractedPackage 的文件夾中,請在命令提示符處鍵入以下命令:KBArticleNumber /X:C:\ExtractedPackage
- 打開包含軟件更新程序包的解壓縮文件的臨時文件夾。例如,打開 C:\ExtractedPackage。
- 右鍵單擊該文件夾中的 Update.exe 文件,然后單擊“屬性”。
- 在“版本”選項卡上,查看“文件版本”的值。如果版本號為 5.4.15.0 或更高版本,則支持本文提到的新功能。
Update.exe 將確定更新對安裝源是否合適。例如,Windows 2000 Service Pack 4 (SP4) 包含的修補程序?qū)⒉粫傻揭呀?jīng)集成了 SP4 的 Windows 2000 安裝源中。 Update.exe 還將確定安裝源是否可用于正確的硬件平臺。
/integrate 開關(guān)不能用于解壓縮后的程序包。
如果不想集成安裝程序低于 Update.exe 5.4.15.0 版的軟件更新,請不要執(zhí)行步驟 6 到步驟 13。如果想集成安裝程序低于 Update.exe 5.4.15.0 版的軟件更新,請執(zhí)行步驟 6 到步驟 13,集成這些更新。
Update.exe 5.4.15.0 或更高版本
若要將使用 Update.exe 5.4.15.0 或更高版本的軟件更新集成到 Windows 安裝源文件中,請按照下列步驟操作:
- 將某個驅(qū)動器映射到要在其上創(chuàng)建分發(fā)文件夾的網(wǎng)絡(luò)共享。或者,登錄到要在其上創(chuàng)建分發(fā)文件夾的計算機。下面的步驟假定您在驅(qū)動器 X 上創(chuàng)建分發(fā)文件夾。
- 創(chuàng)建分發(fā)文件夾。例如,若要在驅(qū)動器 X 上創(chuàng)建名為 Winflat 的分發(fā)文件夾,請在命令提示符處鍵入以下命令:
mkdir X:\Winflat\
- 在 Winflat 分發(fā)文件夾上設(shè)置權(quán)限,以使管理員僅具有“完全控制”權(quán)限,所有其他用戶僅具有“讀取”和“執(zhí)行”權(quán)限。
- 將 Windows 產(chǎn)品 CD 插入 CD 驅(qū)動器中,然后將 CD 的內(nèi)容復(fù)制到在步驟 2 中創(chuàng)建的 Winflat 分發(fā)文件夾中。為此,請在命令提示符處鍵入以下命令:
xcopy /E /I /V D:X:\Winflat\
- 要集成使用 Update.exe 5.4.15.0 版或更高版本作為安裝程序的軟件更新,請在命令提示符處為要集成的每個更新鍵入以下內(nèi)容:
KBArticleNumber /integrate:path
注意:對于 path,請指定分發(fā)文件夾的路徑。例如,若要在位于 X:\Winflat 的分發(fā)文件夾中集成 KB123456.exe 文件,請鍵入:KB123456 /integrate:x:\winflat
Update.exe 的早期版本
若要將使用早期版本的 Update.exe 的軟件更新集成到 Windows 安裝源文件中,請按照下列步驟操作:
- 將某個驅(qū)動器映射到要在其中創(chuàng)建分發(fā)文件夾的網(wǎng)絡(luò)共享,或登錄到要在其中創(chuàng)建分發(fā)文件夾的計算機。下面的步驟假定您在驅(qū)動器 X 上創(chuàng)建分發(fā)文件夾。
- 創(chuàng)建分發(fā)文件夾。例如,若要在驅(qū)動器 X 上創(chuàng)建名為 Winflat 的分發(fā)文件夾,請在命令提示符處鍵入以下命令:
mkdir X:\Winflat\
- 在 Winflat 分發(fā)文件夾上設(shè)置權(quán)限,以使管理員僅具有“完全控制”權(quán)限,所有其他用戶僅具有“讀取”和“執(zhí)行”權(quán)限。
- 將 Windows 產(chǎn)品 CD 插入 CD 驅(qū)動器中,然后將 CD 的內(nèi)容復(fù)制到在步驟 2 中創(chuàng)建的 Winflat 分發(fā)文件夾中。為此,請在命令提示符處鍵入以下命令:
xcopy /E /I /V D:X:\Winflat\
- 編輯 X:\Winflat\i386\dosnet.inf,將“svcpack”添加到 [OptionalSrcDirs] 節(jié)。例如:
[OptionalSrcDirs]
uniproc
svcpack
注意:對于 Windows XP 或 Windows Server 2003 分發(fā)文件夾,您可能必須在 Dosnet.inf 文件中創(chuàng)建 [OptionalSrcDirs] 節(jié)。Windows 2000 中包括的 Dosnet.inf 文件已經(jīng)包含此節(jié)。 - 創(chuàng)建 X:\Winflat\i386\svcpack 文件夾。為此,請在命令提示符下鍵入以下命令:
mkdir X:\Winflat\i386\svcpack
- 將要集成的更新程序包 (ProductName-KBArticleNumber-Option-Language.exe ) 復(fù)制到X:\Winflat\i386\svcpack 文件夾中。為此,請使用 8.3 命名格式 (KBArticleNumber.exe),其中 ArticleNumber 是與更新相關(guān)聯(lián)的 Microsoft 知識庫文章編號。如果您要應(yīng)用多個更新,請復(fù)制并重命名所有更新程序包。
- 將每個更新程序包解壓縮到唯一的臨時文件夾中。例如,要將某個更新程序包的文件解壓縮到驅(qū)動器 Y 上名為 ExtractedPackage 的文件夾中,請在命令提示符處鍵入以下命令:
C:\i386\svcpack\KBArticleNumber /X:Y:\ExtractedPackage
- 對于每個更新,從 Y:\ExtractedPackage 復(fù)制編錄文件 (KBArticleNumber.cat) 和已更新的二進制文件(例如 .exe、.dll 或 .sys 文件)。為此,請按照下列步驟操作:
- 對于每個更新,將 KBArticleNumber.cat 從 Y:\ExtractedPackage 復(fù)制到X:\Winflat\i386\svcpack 文件夾中。對 .cat 文件使用與更新程序包 (KBArticleNumber.cat) 的名稱相同的名稱,不要復(fù)制 Empty.cat。
- 對于每個更新,如果 Y:\ExtractedPackage 中存在相同的二進制文件,則只保留版本最高的文件。
- 對于每個更新,應(yīng)檢查 Y:\ExtractedPackage 中包含的每個二進制文件,確定在X:\Winflat\I386 文件夾中是否存在相同的文件。如果 I386 文件夾中存在該文件,則從X:\Winflat\I386 中刪除該文件。
注意:I386 文件夾中文件擴展名的最后一個字符可能是下劃線 (_)。例如,Rpcss.dll 在 I386 文件夾中名為 Rpcss.dl_。 - 對于每個更新,將已更新的二進制文件從 Y:\ExtractedPackage 復(fù)制到X:\Winflat\I386。
- 對于每個更新,查看 Y:\ExtractedPackage 中是否存在任何與 X:\Winflat\I386 的子文件夾同名的子文件夾。如果某個文件夾中包含任何這樣的子文件夾,請將已更新的二進制文件從 Y:\ExtractedPackage 子文件夾復(fù)制到 X:\Winflat\I386 中相應(yīng)的子文件夾中。例如,如果 Y:\ExtractedPackage 中包含名為 Uniproc 的文件夾,則將Y:\ExtractedPackage\Uniproc 中的文件復(fù)制到 X:\Winflat\I386\Uniproc 中。
注意:- 由于 Microsoft 提供對最新和次新的 Service Pack(N 和 N-1)的支持,因此 Microsoft 將某些更新打包為雙模式更新,您可以將這些雙模式更新應(yīng)用于具有不同 Service Pack 級別的計算機。例如,Windows XP 更新可能同時包含 SP1 和 SP2 兩個子目錄,其中 SP1 文件夾包含 Windows XP 原始版本的更新文件,SP2 文件夾包含對 Windows XP SP1 的更新文件。在本示例中,如果安裝源是 Windows XP 原始版本(版本 2600),則必須使用 SP1 目錄中的文件。如果安裝源是 Windows XP SP1,則必須使用 SP2 目錄中的文件。 有關(guān) Windows XP 雙模式更新程序包的更多信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應(yīng)的文章:Microsoft 還可能在發(fā)布 Service Pack 1 后將 Windows Server 2003 更新打包為雙模式更新。
- Windows Server 2003 更新程序包還在 nnnQFE 和 nnnGDR 文件夾中包含兩組更新的二進制文件,分別用于最新和次新 Service Pack(N 和 N-1),其中 nnn 是最新和次新 Service Pack(N 和 N-1)的原始發(fā)行版本、“SP1”、“SP2”,依此類推。在這種情況下,您必須使用相應(yīng)的 nnnQFE 文件夾中的文件。 有關(guān) Windows Server 2003 更新程序包內(nèi)容的更多信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應(yīng)的文章:
824994 Windows XP Service Pack 2 和 Windows Server 2003 軟件更新程序包內(nèi)容說明
- 您不必復(fù)制 Common 或 Update 文件夾中的文件,例如 Update.exe、Update*.inf、SPmsg.dll、SPcustom.dll、SPuninst.exe、Update.ver 或符號(.dbg 文件)。
- 對于在步驟 9 中復(fù)制的每個文件(KBArticleNumber.cat 除外),請在X:\Winflat\I386\Dosnet.inf 文件中查找,以確定該文件名是否在 [Files] 節(jié)中列出。在 [Files] 節(jié)中列出的所有文件的前面都有“d1,”。例如:
d1,Filename
如果您在步驟 9 中復(fù)制的任何文件的文件名都沒有列出,請使用此語法添加一個條目。 例如,如果修補程序包含 Win32k.sys,由于 Win32k.sys 未在 Dosnet.inf 中列出,因此應(yīng)將d1,win32k.sys 添加到 X:\Winflat\I386\Dosnet.inf 的 [Files] 節(jié)中。此添加可確保在 Windows 安裝過程中復(fù)制 Win32k.sys 的更新版本。 - 刪除 X:\Winflat\I386\Svcpack.in_ 文件。
- 在 X:\Winflat\I386 文件夾中創(chuàng)建 Svcpack.inf 文件。為此,根據(jù)您要部署單個更新還是部署多個更新,請使用以下內(nèi)容中的相應(yīng)部分。(用您的更新 .cat 文件的知識庫文章編號替換ArticleNumber):
Windows 2000
[Version]
Signature="$Windows NT$"
MajorVersion=5
MinorVersion=0
BuildNumber=2195
[SetupData]
CatalogSubDir="\i386\svcpack"
[ProductCatalogsToInstall]
KBArticleNumber.cat
[SetupHotfixesToRun]
KBArticleNumber.exe /optionsWindows XP
[Version]
Signature="$Windows NT$"
MajorVersion=5
MinorVersion=1
BuildNumber=2600
[SetupData]
CatalogSubDir="\i386\svcpack"
[ProductCatalogsToInstall]
KBArticleNumber.cat
[SetupHotfixesToRun]
KBArticleNumber.exe /optionsWindows Server 2003
[Version]
Signature="$Windows NT$"
MajorVersion=5
MinorVersion=2
BuildNumber=3790
[SetupData]
CatalogSubDir="\i386\svcpack"
[ProductCatalogsToInstall]
KBArticleNumber.cat
[SetupHotfixesToRun]
KBArticleNumber.exe /options注意:
在運行 Windows Server 2003 的計算機上安裝更新
要在某臺計算機上安裝更新,請在該計算機上運行更新程序 WindowsServer2003-KB
######-x86-LLL.exe。如果要在多臺計算機上安裝更新,可以在網(wǎng)絡(luò)上為該更新創(chuàng)建一個分發(fā)文件夾。下面的過程介紹了如何使用此方法安裝一個或多個更新。重要說明:必須結(jié)合在 SP1 之后發(fā)行的更新一起安裝 SP1,或者在安裝該更新之前安裝 SP1。在安裝 SP1 之前安裝多個最近發(fā)行的更新,可能會導(dǎo)致系統(tǒng)出現(xiàn)問題。
注意:對于下面的過程,
Drive:\ 代表分發(fā)文件夾所在的網(wǎng)絡(luò)驅(qū)動器或計算機驅(qū)動器。
要通過運行 Update.exe 程序來安裝更新,請按照下列步驟操作:
- 連接到要在其上創(chuàng)建分發(fā)文件夾的網(wǎng)絡(luò)或計算機。
- 在共享的網(wǎng)絡(luò)目標(biāo)文件夾中,為更新文件創(chuàng)建一個分發(fā)文件夾。例如,要創(chuàng)建名為 Update 的分發(fā)文件夾,請鍵入以下內(nèi)容:mkdir Drive:\Update
- 將 Windows Server 2003 Update.exe 程序復(fù)制到在步驟 2 中創(chuàng)建的分發(fā)文件夾中。例如,要將 SP1 Update.exe 程序復(fù)制到名為 Update 的分發(fā)文件夾中,請鍵入以下內(nèi)容:xcopy C:\WindowsServer2003-KB######-x86-LLL.exe Drive:\Update
- 要從共享的網(wǎng)絡(luò)分發(fā)文件夾安裝更新,請運行 WindowsServer2003-KB######-x86-LLL.exe 程序。例如,要從名為 Update 的分發(fā)文件夾安裝更新,請鍵入以下內(nèi)容:Drive:\Update\WindowsServer2003-KB######-x86-LLL.exe
- 為了確保更新生效,請在安裝完所有更新后重新啟動計算機。
注意:WindowsServer2003-KB
######-x86-LLL.exe 文件與 Update.exe 支持相同的命令行選項。