使用群組原則電腦啟動指令碼部署 Office 2010

 

適用版本: Office 2010

上次修改主題的時間: 2016-11-29

本文提供使用群組原則指派電腦啟動指令碼以部署 Microsoft Office 2010 之流程與程序的詳細技術指導。您可以利用用戶端電腦支援的任何語言來撰寫指令碼。最常見的是 Windows Script Host 支援的語言 (例如,VBScript 和 Jscript) 及命令檔案 (例如批次檔)。

在測試環境中部署 Office 2010

本節提供群組原則電腦啟動指令碼基礎結構之測試網路環境的圖解和說明。文中還涵蓋使用群組原則電腦啟動指令碼部署 Microsoft Office Professional Plus 2010 的程序性步驟。

網路環境

下圖是本文的測試網路環境。

測試執行群組原則啟動指令檔的網路

所有伺服器 (A 和 B) 皆執行 Windows Server 2008 R2,並隸屬於相同網域 (CPANDL.COM),這個網域還包括執行 Windows 7 Professional 和 Windows Vista 的用戶端電腦 (C)。以下是每部用戶端電腦的完整網域名稱 (FQDN)、每部伺服器所執行的應用程式和角色、這些電腦所在的組織單位 (OU) 及群組原則物件 (GPO):


  • A – <DC.CPANDL.COM> Active Directory、DNS、DHCP、GPO-Office2010_GPO、OU-Office2010_OUW7C01WVC02 為該 OU 的成員、Office2010_OU


  • B – <FS.CPANDL.COM> 檔案服務、檔案共用-\\FS\Office2010SourceFiles (唯讀存取)、檔案共用-\\FS\Office2010LogFiles (讀寫存取)


  • C – <W7C01.CPANDL.COM 和 WVC02.CPANDL.COM> Windows 7 Professional 和 Windows Vista Enterprise

重要

請確定已驗證的使用者具有網路共用的讀取權。在此範例中,網路共用是 \FS\Office2010SourceFiles。

注意

Office2010_GPO 會連結至 Office2010_OU。如此 GPO 的設定便可指定給 OU 所包含的電腦物件。若要將 GPO 連結至 OU,請使用 [群組原則管理] MMC 嵌入式管理單元。

在生產環境中自訂和部署 Office 2010 之前,建議您先閱讀下列文章:<規劃 Office 2010 的大量啟用>、<部署 Office 2010 的大量啟用>、<Office 2010 自訂概觀>、<建立 Office 2010 的網路安裝點>、<Office Customization Tool in Office 2010>、<2010 Office Config.xml 檔案>、<自訂 Office 2010>及<64 位元版本的 Office 2010>。

自訂 Office 2010 的安裝程式

用以建立 Office 2010 安裝程式自訂檔案的程式檔案,是從 Office 安裝 CD 中所有檔案複本所在的來源目錄執行。在此範例中,來源檔案是複製到 \\FS\Office2010SourceFiles。

在 Office 2010,整個安裝是由安裝程式所控制,包括 Windows Installer 在 2007 Office System 之前的舊版 Office 版本中處理的程序。自訂安裝程式的預設行為可讓您控制流程。在此範例中,您將使用 Config.xml 檔案以自訂 Office 2010 的無訊息模式安裝,以及使用 Office 自訂工具 (OCT) 以自訂 Office 2010 產品的安裝,例如,指定大量授權金鑰,及選取要安裝 Microsoft Office 的哪些應用程式。在電腦上安裝 Office 時,安裝程式會套用 config.xml 和 .msp 檔案的自訂 (使用 OCT 所建立)。

在 Config.xml 中指定無訊息安裝選項

若要將不需要使用者互動的 Office 2010 產品設定成「無訊息安裝」 (自動安裝),請修改您要安裝之產品的 Config.xml 檔案,將 Display 元素的 Level 屬性設為 "none" (Display Level="none"),然後儲存 Config.xml 檔案,如下列程序所示。Display 元素會指定安裝程式對使用者顯示的使用者介面層級。

  1. 使用文字編輯器工具(例如 [記事本]) 開啟 Office 產品的 Config.xml,在這個範例中為您正在安裝的 Office Professional Plus 2010。根據預設,Config.xml 檔案位於核心產品的 .WW 資料夾中,在這個範例中為 \\FS\Office2010SourceFiles\ProPlus.WW。

  2. 找到包含 Display 元素的那一行,如下列範例所示:

    <!-- <Display Level="full" CompletionNotice="yes" SuppressModal="no" AcceptEula="no" /> -->

  3. Display 元素項目修改成您要使用的無訊息選項。請務必移除註解分隔符號 "<!--" 和 "-->"。例如,使用下列語法:

    <Display Level="none" CompletionNotice="no" SuppressModal="yes" AcceptEula="yes" />

    這些選項會將安裝程式導向無訊息執行模式,不僅可免於提示使用者輸入資訊,還可免於安裝作業等待使用者互動。如需語法和 Config.xml 的詳細資訊,請參閱<2010 Office Config.xml 檔案>中的<Display 元素>。

  4. 儲存 Config.xml 檔案,在這個範例中是儲存至 \\FS\Office2010SourceFiles\ProPlus.WW。

使用 OCT 指定大量授權金鑰並選取要安裝哪些應用程式

  1. 若要自訂 Office 安裝程式,請使用命令列 setup.exe /admin 啟動 Office 自訂工具。在此範例中,請在命令提示字元下,從套件來源目錄 \\FS\Office2010SourceFiles 執行 setup.exe /admin

  2. 在此範例中,若要輸入大量授權金鑰並選取要安裝哪些應用程式,請修改和進行下列設定:

  3. 選取 [授權及使用者介面] 下的 [輸入其他產品金鑰] 選項,然後輸入有效的多重啟用金鑰 (MAK)。

    注意

    在此範例中,因為 Config.xml 檔案中已設定無訊息安裝的參數,所以使用 OCT 時不必再設定這些參數。這是因為在 Config.xml 中定義的自訂,其優先順序高於 OCT 所建立之自訂檔案中的自訂。

  4. 選取位在 [功能] 下的 [設定功能安裝] 選項,然後選取要安裝哪些應用程式。在此範例中,為了加速安裝程序,只選取 Microsoft Word。

    如需使用 OCT 還可以設定哪些不同參數的其他資源,請參閱<Office Customization Tool in Office 2010>、<設定 Office 2010 的功能安裝狀態>及<設定 Office 2010 的使用者設定>。

  5. 儲存並命名新建立的 .msp 檔案,然後將其置於電腦上來源檔案所在的 Office 2010 \Updates 資料夾中,在此範例中為 \\FS\Office2010SourceFiles\Updates\Office2010ProPlus.MSP

警告

Updates 資料夾中每個產品只能有一個安裝程式自訂 .msp 檔案。如果您部署的是 Office 2010 初始安裝,且還想部署 Office 2010 軟體更新,如 Service Pack 和 Hotfix,安裝程式就會在安裝過程中套用產品更新。您可以將 Office 2010 產品更新 (會在完成安裝後套用) 放在 Updates 資料夾中。如需詳細資訊,請參閱<Office Customization Tool in Office 2010>。

下一個步驟是在網域控制站上設定指令碼,在這個範例中的網域控制站為 DC.CPANDL.COM。

在網域控制站上設定指令碼

在網域控制站上設定指令碼的程序包含下列步驟:

  1. 將指令碼複製到 GPO 的啟動資料夾。

  2. 將指令碼新增至GPO。

  3. 設定啟動指令碼的最長執行時間。

警告

群組原則提供影響組織中數百台以及甚至是上千台電腦之間設定的能力。因此,請務必在測試環境中嚴格地測試所有新的群組原則設定或部署,再將它們移到生產環境中。如需分段執行群組原則部署的詳細資訊,請參閱群組原則規劃和部署指南 (https://go.microsoft.com/fwlink/?linkid=182208&clcid=0x404) 中的<排演群組原則部署>。

將指令碼複製到 GPO 的啟動資料夾

這個範例包括範例批次檔指令碼,以說明如果尚未安裝 Microsoft Office 這個產品,如何執行它的 Setup.exe,並將錯誤或成功記錄在集中管理的記錄檔。指令碼開頭的變數已針對此測試部署案例而修改。例如,ProPlus 前面的產品名稱加上 Office14,還加入 Office 來源檔案路徑 (\\FS\Office2010SourceFiles) 和記錄檔路徑 ( \\FS\Office2010LogFiles)。接著將此範例指令碼複製到 [記事本] 並以 Office2010StartupScript.bat 的檔案名稱儲存。然後將指令碼檔案儲存在網域控制站上啟動指令碼之 GPO 的預設目錄,在此範例中為 C:\Windows\SYSVOL\sysvol\adatum.com\Policies\{GPO 的 GUID}\Machine\Scripts\Startup。

注意

您可以在 [群組原則管理編輯器] MMC 嵌入式管理單元中,以滑鼠右鍵按一下 GPO,即可找出代表 GPO 的 GUID,在此範例中為 Office2010_GPO,然後按一下 [內容]。GUID 會列在 [唯一名稱] 欄位中。

setlocal

REM *********************************************************************
REM Environment customization begins here. Modify variables below.
REM *********************************************************************

REM Get ProductName from the Office product's core Setup.xml file, and then add "office14." as a prefix. 
set ProductName=Office14.PROPLUS

REM Set DeployServer to a network-accessible location containing the Office source files.
set DeployServer=\\FS\Office2010SourceFiles

REM Set ConfigFile to the configuration file to be used for deployment (required)
set ConfigFile=\\FS\Office2010SourceFiles\ProPlus.WW\config.xml

REM Set LogLocation to a central directory to collect log files.
set LogLocation=\\FS\Office2010LogFiles

REM *********************************************************************
REM Deployment code begins here. Do not modify anything below this line.
REM *********************************************************************

IF NOT "%ProgramFiles(x86)%"=="" (goto ARP64) else (goto ARP86)

REM Operating system is X64. Check for 32 bit Office in emulated Wow6432 uninstall key
:ARP64
reg query HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432NODE\Microsoft\Windows\CurrentVersion\Uninstall\%ProductName%
if NOT %errorlevel%==1 (goto End)

REM Check for 32 and 64 bit versions of Office 2010 in regular uninstall key.(Office 64bit would also appear here on a 64bit OS) 
:ARP86
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%ProductName%
if %errorlevel%==1 (goto DeployOffice) else (goto End)

REM If 1 returned, the product was not found. Run setup here.
:DeployOffice
start /wait %DeployServer%\setup.exe /config %ConfigFile%
echo %date% %time% Setup ended with error code %errorlevel%. >> %LogLocation%\%computername%.txt

REM If 0 or other was returned, the product was found or another error occurred. Do nothing.
:End

Endlocal

將指令碼新增至GPO

若要將指令碼新增至 GPO,請使用 [群組原則管理編輯器] MMC 嵌入式管理單元,然後以滑鼠右鍵按一下 [啟動] ([GPO] | [電腦設定] | [原則] | [Windows 設定] | [指令碼 (啟動/關機)] | [啟動]),依序按一下 [內容]、[新增]、[瀏覽],然後以醒目提示方式選取指令碼檔案,在此範例中為 Office2010StartupScript.bat

設定啟動指令碼的最長執行時間

根據預設,系統讓合併的指令碼組合最多只能執行 600 秒 (10 分鐘)。系統管理員可以使用原則設定來調整此間隔,以確保啟動指令碼會完成執行。[對群組原則指令碼的最長等待時間] 原則設定會指定系統對於要執行之群組原則所套用的指令碼會等待多久時間。此設定會限制所有由群組原則套用以完成執行之登入、啟動及關機指令碼所允許的總時間。如同任何群組原則,您必須先在臨時環境中完整測試啟動指令碼,才能將之部署到生產環境。測試將有助於您決定適用於您特殊網路環境之 [對群組原則指令碼的最長等待時間] 原則所要使用的值。若將此值設定得太低,可能會導致安裝突然中斷。有一些因素可能會對此值產生影響,例如,網路速度、用戶端電腦硬體,以及在用戶端電腦上執行的其他指令碼。您可以藉由完整測試此原則設定,來決定適用於您特定環境的適當值。

在此範例案例中,將 [對群組原則指令碼的最長等待時間] 原則設定的值設為 0,這會指示系統等到指令碼完成為止,不論這些指令碼需要多少時間。

若要變更 GPO 的 [對群組原則指令碼的最長等待時間] (在此範例中為 Office2010_GPO),請使用 [群組原則管理編輯器] MMC 嵌入式管理單元,然後按兩下 [對群組原則指令碼的最長等待時間] ([GPO] | [電腦設定] | [原則] | [系統管理範本] | [系統] | [指令碼])。

在將對 GPO 所做的電腦啟動指令碼原則變更套用至目標電腦後 (在這個範例中目標電腦為 W7C01.CPANDL.COM 和 WVC02.CPANDL.COM),電腦啟動作業就會執行電腦啟動指令碼。您不需要等待用戶端電腦上發生由網域控制站執行的原則重新整理,而是可以直接在用戶端電腦的命令提示字元中發出下列命令列: gpupdate /force。您可以使用 [原則結果組] (RSoP) MMC 嵌入式管理單元來確認電腦啟動指令碼的電腦原則設定存在於用戶端電腦上。

確認電腦啟動指令碼狀態

在此範例中,指令碼記錄資訊會寫入 computername.txt 檔案中,並儲存到網路共用 \\FS\Office2010LogFiles。記錄檔中的傳回碼 0 表示安裝已順利完成。傳回碼為 3010 表示需要重新啟動。如需 Office 產品中 Windows Installer 程序之其他錯誤碼的詳細資訊,請參閱 Microsoft 知識文章 290158:Office 2003 產品和 Office XP 產品中的 Windows Installer 程序的錯誤代碼與錯誤訊息清單