查看單個文章
舊 2006-07-08, 10:05 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 金幣
預設 將微軟修正檔包打入Windows XP安裝光碟中

安裝帶有 Service Pack 和修補程式的 Windows XP

  本部分解釋如何在網路共享的分發資料夾中執行整合了 Service Pack 和 Service Pack 之後的修補程式的 Windows XP 的組合安裝。不需要分別執行 Windows XP、Service Pack 或 Windows XP 修補程式的安裝。請注意,如果要安裝帶有修補程式的 Windows XP,必須使用這種方法。

要點

  本過程在執行 Windows XP 安裝程式過程中安裝 Windows XP 修補程式。

準備組合安裝
  在通過網路執行 Windows XP 安裝程式來部署 Windows XP 和 Windows XP 修補程式的安裝之前,必須將 Windows XP 和 Windows XP 修補程式的安裝文件複製到共享的分發資料夾下,然後完成下列過程中描述的其他步驟。

  如果您是原始設備製造商 (OEM),並且計劃在目標電腦上安裝其他 OEM 文件(例如,設備驅動程式、應用程式或元件文件),請在 \$OEM$ 子資料夾下創建一個 \$1 子資料夾。將 \$1 子資料夾映射到 systemdrive,即 Windows XP 安裝的目標驅動器。

注意:

  在以下過程中,「E:\」代表分發資料夾所在的網路或電腦的驅動器名稱。

  創建和安裝 Windows XP 所必需的資料夾和文件

  連接到您希望在其上創建分發資料夾的網路或電腦。
  過鍵入以下命令(使用合適的驅動器名)創建一個 i386 分發資料夾:
mkdir E:\i386

  使用 xcopy 命令將文件和子資料夾從整合 SP1 的 Windows XP 安裝光碟複製到 E:\i386 資料夾。例如,如果 D: 是您的 CD-ROM 驅動器,請鍵入下列命令:
xcopy /E /I /V D:\i386 E:\i386

  打開 E:\i386\dosnet.inf,如下所示,在 [OptionalSrcDirs] 部分新增 svcpack 條目:
[OptionalSrcDirs]
svcpack創建 E:\i386\svcpack 資料夾。例如,要在 i386 資料夾下創建 \svcpack 子資料夾,請鍵入以下命令:
mkdir E:\i386\svcpack

  使用 8.3 命名格式 (Q######.exe) 將修補程式文件 (Q######_XXX_YYY_ZZZ_LL.exe) 複製到 E:\i386\svcpack 資料夾,其中 ###### 代表實際的修補程式編號。
如果正在部署多個修補程式,請根據此命名格式重命名所有修補程式文件。

  在一個唯一的臨時位置展開修補程式。例如,要在名為 samplefolder 的資料夾下展開這些文件,請鍵入下列命令:
E:\i386\svcpack\Q######.exe /X:E:\

  按照下列方法複製編錄文件 (.cat) 和修補程式的二進制文件(例如 .exe、.dll 和 .sys 文件):
  將 Q######.cat 複製到 E:\i386\svcpack 資料夾。如果要同時部署多個修補程式,請確保已經複製了每個要部署的修補程式中的所有編錄文件。每個修補程式都有一個唯一的編錄文件,該文件必須以 Q######.cat 格式複製。
  如果二進制文件在多個程式包中存在,則只保留最高版本的文件。
  刪除 i386 資料夾中所有要替換的二進制文件(通常,在共享資料夾中可以通過每個文件名末尾的下劃線「_」識別這些文件)。
  將修補程式的二進制文件和修補程式的所有子資料夾複製到 i386 資料夾。
  例如,需要將修補程式中的 i386\uniproc\* 文件複製到共享安裝資料夾下的 i386\uniproc 資料夾中。不需要複製 Update.exe、Update.inf、SPmsg.dll、SPcustom.dll、SPuninst.exe、Update.ver 或符號文件。

刪除 E:\i386\Svcpack.in_ 文件。
使用下列內容在 E:\i386\Svcpack.inf 中創建新的 Svcpack.inf 文件:
[Version]
Signature="$Windows NT$"MajorVersion=5
MinorVersion=1
BuildNumber=2600
[SetupData]
CatalogSubDir="\i386\svcpack"

[ProductCatalogsToInstall]
Q######.cat
[SetupHotfixesToRun]
Q######.exe /options

用於修補程式的推薦選項是 /Q /N /Z。

要點

  如果要同時部署多個修補程式,請在 [ProductCatalogsToInstall] 和 [SetupHotfixesToRun] 下為每個修補程式新增一項(如本段之後所示)。下面幾行內容是這些部分的一個示例,用於說明如何安裝多個修補程式。如果正在安裝 Service Pack,則不需要包括有關 Service Pack 的詳細訊息,因為它們包含在另一個工作行程的安裝中。

[ProductCatalogsToInstall]
Q123456.cat
Q123478.cat
Q123490.cat
[SetupHotfixesToRun]
Q123456.exe /options
Q123478.exe /options
Q123490.exe /options 用於修補程式的推薦選項是 /Q /N /Z。

  剛測試了一下,整合順利完成,不過再安裝的過程中「註冊元件」這個步驟用了差不多20分鐘,整個安裝花了45分鐘,比原來沒整合SP2修正檔時多了20分鐘,呵呵。不過這比網上升級快多了,呵呵

整合的元件有:
IE6(SP1:Q810847)
SP2所有修正檔
Media player 9
movie maker 2
。netfx
日記檢視器

  檢視控制台裡的「新增和刪除程式」,發覺和網上升級有很大的區別,就是沒有訊息,呵呵,爽!

  另外,在安裝IE6(SP1:Q810847)的過程中,系統會提示「是否重啟機器」,點「否」即可。

  這是用來替換i386下面的SVCPACK.INF內容
[Version]
Signature="$Windows NT$"
MajorVersion=5
MinorVersion=1
BuildNumber=2600

[SetupData]
CatalogSubDir="\i386\svcpack"

[ProductCatalogsToInstall]
wmdm.cat
WMFSDK.cat
setup_wm.cat
q814995.cat
ieexcep.cat
drm.cat
wmexpack.cat
js56nchs.cat
q814033.cat
q811630.cat
Q810847.cat
q810833.cat
q322011.cat
q810577.cat
q323255.cat
q810565.cat
q327979.cat
q329834.cat
q328310.cat
q329441.cat
q329048.cat
q329390.cat
q329115.cat
wmp.cat
q329170.cat

[SetupHotfixesToRun]
Q814995.exe /Q /N /Z
Q814033.exe /Q /N /Z
q814995.exe /Q /N /Z
q814033.exe /Q /N /Z
q811630.exe /Q /N /Z
Q810847.exe /Q
q810833.exe /Q /N /Z
q322011.exe /Q /N /Z
q810577.exe /Q /N /Z
q323255.exe /Q /N /Z
q810565.exe /Q /N /Z
q327979.exe /Q /N /Z
q329834.exe /Q /N /Z
q328310.exe /Q /N /Z
q329441.exe /Q /N /Z
q329048.exe /Q /N /Z
q329390.exe /Q /N /Z
q329115.exe /Q /N /Z
mpsetup.exe /Q
hu1002.exe /Q
mm2setup.exe /Q
msjavwu.exe /Q
setup.exe /Q
mdxredist.msi /q

================================
整合 Hotfix 至 Windows XP
--------------------------------------------------------------------------------

sp2之後的修正檔用svcpack.inf整合,svcpack.inf在T-12分鐘執行。
WP10用批處理文件整合,批處理文件在winnt.sif文件的[GuiRunOnce]字段下被執行,xp第一次登入時執行。
這次要教大家的如同標題所示把hotfix在windows進行安裝程式時一併安裝。

將你下載來的hotfix更新檔更改成8-3的格式(意即檔名部分限制在8個字元內,副檔名理所當然就是exe啦~)

範例:
Q819696_WXP_SP2_x86_ENU.exe ----->改為 Q819696.exe
WindowsXP-KB824146-x86-ENU.exe --->改為KB824146.exe

一般下載來的更新檔有兩種圖示
如...

加上 /Q /O /N /Z

如...

加上 /Q:A /R:N

{建立Update資料夾}
0. 建立一名為Update的資料夾,將下載來的hotfix和更新檔依照8-3的檔案命名規則通通放進去,包括5.的QCHAIN.exe。

{建立svcpack.inf}
1. 開啟記事本>將本段文字下方的code 複製進去,再將你下載來的hotfix取代填進去紅色的部份。


引用:
作者: tiby

[Version]
Signature="$Windows NT$"
MajorVersion=5
MinorVersion=1
BuildNumber=2600

[SetupData]
CatalogSubDir="\i386\Update"

[ProductCatalogsToInstall]

[SetupHotfixesToRun]
Q330994.exe /Q:A /R:N
Q819696.exe /Q /O /N /Z
KB824146.exe /Q /O /N /Z
qchain.exe




2. 填寫完畢後,將檔案存成svcpack.inf 然後丟到光碟目錄下的i386資料夾即可。

{刪除svcpack.in_}
3. 搜尋光碟目錄下的svcpack.in_並刪除之,此檔一定要刪,不然會影響svcpack.inf的運作造成windows 安裝程式無法進行。

{DOSNET.inf}
4. 找出光碟目錄下的DOSNET.inf檔案,開啟,將以下這段code填進去。

引用:
作者: tiby

[OptionalSrcDirs]
Update




{QCHAIN.exe}
5. 下載QCHAIN.exe ,此檔是微軟出的一個小工具,此檔可以確保檔案在更新的過程中,保留最新版本的程式/DLL檔,而不會被較舊版本的程式/DLL檔給取代。

完成以上5個步驟即大功告成。

此篇可參照
http://unattended.msfn.org/xp/installhotfixes.htm
__________________
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次