共用方式為


Windows 11 傳統型版本的 OEM 部署

準備好建置及測試 Windows 電腦嗎? 此實驗室會示範建立及部署 Windows 映像的步驟。 我們將示範如何使用工具和命令來設定端對端部署。 命令可以編寫腳本,協助您快速自定義特定市場的新映像,以符合客戶的需求。

我們將逐步引導您完成建置自定義 Windows 部署的程式。 以下是我們將涵蓋的內容:

顯示 Windows 部署流程的影像。流程的第一個步驟是收集附隨品、安裝 ADK 和建立 WinPE 磁碟驅動器來準備。接著,您可以新增語言套件、隨選功能、應用程式、驅動程式、更新、設定自動安裝及啟動版面配置、設定硬體設定,以及設定版本來建立映像。最後,您可以將映射套用為ffu或 WIM。

我們將從準備您的環境開始,然後討論下列步驟:

  • 準備和掛接 WinPE 映像
  • 新增套件
  • 新增驅動程式
  • 建立 WinPE 媒體

接下來,我們將移至自定義您的 Windows 映像。 我們將從掛接的 Windows 映像離線自定義開始,我們將討論:

  • 新增驅動程式
  • 新增語言
  • 新增 更新
  • 重新安裝收件匣應用程式
  • 預安裝 Microsoft Office
  • 自定義 \[開始\] 配置
  • 自訂任務列
  • 設定 OOBE 以顯示自訂 EULA
  • 設定及使用回應檔案來自定義 Windows 安裝程式

我們將完成自定義 Windows 映射,方法是 將您的映射部署到計算機,然後開機進入稽核模式 並完成變更,包括:

  • 在稽核模式中進行變更
  • 準備按鈕重設

最後,我們將 完成並擷取您的映像、確認一切正常運作,以及準備映像以進行部署

  • 完成映像

現在就開始吧!

準備實驗室環境

注意

如果您尚未收集完成此實驗室所需的檔案,請參閱 取得 Windows 桌面版本 OEM 部署所需的工具。

此時,您應該已準備好使用您的工具。 此時,您應具備:

  • 以兩個分割區格式化的 USB 磁碟驅動器:

  • 具有:

    • 名為 C:\temp\lab 的資料夾,已下載下列媒體:
      • Windows 安裝媒體
      • 最新版的 Microsoft Office OPK
      • 語言和選擇性功能 ISO
      • OPK 應用程式更新或收件匣應用程式 ISO
      • Windows ADK 安裝程式
      • WinPE ADK 附加元件
      • 映像的驅動程式(如有需要)
      • 部署指令碼

讓我們設定您的實驗室。

安裝 Windows ADK

Windows ADK 是一組工具,可讓您管理和部署自定義 Windows 安裝至新電腦。

在您的技術人員電腦上:

  1. 如果您有舊版的 Windows 評定及部署套件 (ADK),請將它卸載。

  2. 下載與您安裝之 Windows 版本相符的 最新版本 Windows ADK

  3. 執行 ADK 安裝程式以使用下列選項安裝 ADK:

    • 部署工具
    • 使用者狀態移轉工具 (USMT)
    • Windows 預安裝環境 (Windows PE)
  4. 安裝ADK的WinPE附加元件。

建立可開機的 Windows PE (WinPE) 磁碟分區

WinPE 是一種小型命令行操作系統,可用來擷取、更新和優化 Windows 映射。 在本節中,我們將說明如何在可開機的USB快閃磁碟驅動器上準備基本的WinPE映射,並試用。

準備 WinPE 檔案

  1. 在您的技術人員電腦上,以系統管理員身分啟動 部署和映像處理工具環境

    • 按兩下 [ 開始],輸入 [部署和映像處理工具環境]。 以滑鼠右鍵按兩下 [部署和映像處理工具環境 ],然後選取 [ 以系統管理員身分執行]。
  2. 使用 copype 建立具有基底 WinPE 檔案的工作目錄:

    copype amd64 C:\winpe_amd64
    

    提示

    如果無法運作,請確定您位於部署和映像處理工具環境中,而不是標準命令提示字元。

自定義 WinPE

您可以透過將檔案和元件新增至掛接的 WinPE 映射,以數種方式自定義 WinPE 映射 (boot.wim)。

以下是如何修改 WinPE 映射的一些範例:

  • 新增選擇性元件WinPE 選用元件 隨附於 ADK 中。 這些套件可讓您新增至 WinPE 映像,以將功能新增至 WinPE。

  • 新增圖形或網路驅動程式。 WinPE 包含一般視訊,但在大多數情況下,需要額外的驅動程式才能顯示畫面或連線到網路。 要了解更多資訊,請參閱 WinPE:新增驅動程式

  • 將電源配置設定為高效能。 加速部署。 請注意,我們的範例部署指令碼已自動設定此配置。 請參閱 WinPE:安裝與自訂:高效能

  • 優化 WinPE:建議用於具有有限 RAM 和記憶體的裝置(例如 1GB RAM/16GB 記憶體)。 將驅動程序或其他自定義專案新增至 Windows PE 之後,請參閱 WinPE:優化和壓縮映射 ,以協助縮短開機時間。

當您將套件新增至 WinPE 時,將會降低效能,並增加開機時間。 只新增您需要完成成功部署的套件。

掛接您的 WinPE 映像

若要自定義 Windows 映射,您必須先掛接它,才能使用它。 WinPE 映射也是如此。 掛接映像會將圖像文件的內容擷取到可檢視和修改的位置。 在此實驗室中,我們將使用 DISM 掛接和修改映像。 DISM 隨附於 Windows,但我們將使用 ADK 所安裝的版本,我們將透過部署和映射處理工具環境來存取。

Boot.wim 是 WinPE 映像檔。 您可以在您使用 copype.cmd 複製的檔案中找到它。

掛接映像:

  • 從部署和映像處理工具環境中,掛接映像:

    Dism /mount-image /imagefile:c:\WinPE_amd64\media\sources\boot.wim /index:1 /mountdir:c:\winpe_amd64\mount
    

將套件、選擇性元件、相依性和語言套件新增至 WinPE(選擇性)

使用 Dism /Add-Package 將套件新增至掛接的 WinPE 映像。 ADK 具有 WinPE 選用元件 ,您可以新增其他 WinPE 功能。 某些套件具有相依性,而且需要安裝其他套件。 針對這些套件,您必須先安裝相依性,才能新增套件。 例如,如果您想要在 WinPE 中使用 Powershell,則必須安裝 NetFx 以及特定語言的 OS。 您可以在 中找到 C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\<arch>\WinPE_OCs\OC CAB。 以下說明如何新增 en-us 的 Powershell 支援:

Dism /Add-Package /Image:"C:\WinPE_amd64\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-WMI.cab"  /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-WMI_en-us.cab" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-NetFX.cab" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-NetFX_en-us.cab" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-Scripting.cab" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-Scripting_en-us.cab" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-PowerShell.cab" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-PowerShell_en-us.cab" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-StorageWMI.cab" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-StorageWMI_en-us.cab" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-DismCmdlets.cab" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-DismCmdlets_en-us.cab"

注意

只在必要時新增額外的套件。 您新增的套件越多,開機時間和效能的影響就越大。

將驅動程式新增至 WinPE (如有需要)

如果您需要將驅動程式新增至 WinPE,您將使用 Dism /Add-Driver。 如果 WinPE 尚未包含硬體的驅動程式,您只需要執行此動作。

以下說明如何將驅動程式新增至 WinPE:

注意

此方法需要以 .inf 為基礎的驅動程式。

dism /image:C:\winpe_amd64\mount /Add-Driver /driver:"C:\Out-of-Box Drivers\mydriver.inf"

其中 C:\Out-of-Box Drivers\mydriver.inf 是您要新增之驅動程序的路徑。

若要在資料夾中安裝所有驅動程式,且其所有子資料夾都使用 /recurse 選項。 例如:

Dism /Image:C:\Winpe_amd64\mount /Add-Driver /Driver:c:\drivers /recurse

其中 C:\drivers 是您要新增的 drivers 資料夾。

將電源配置設定為高效能

將 WinPE 設定為使用高效能模式將會加速部署。 範例腳本會在其執行時將 WinPE 設定為高效能模式,但如果您想要確定 WinPE 一律以高效能模式執行,您可以在 WinPE 映射中修改startnet.cmd

  1. 使用記事本開啟 C:\Winpe_amd64\mount\windows\system32\startnet.cmd

    notepad C:\Winpe_amd64\mount\windows\system32\startnet.cmd
    
  2. 將下列這一行新增至startnet.cmd:

    powercfg /s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
    
  3. 儲存檔案並關閉記事本。

清除您的 WinPE 映像

執行 dism /cleanup-image 以減少 WinPE 的磁碟和記憶體使用量,並增加與各種裝置的相容性:

DISM /image:c:\winpe_amd64\mount /Cleanup-image /StartComponentCleanup

如需詳細資訊,請參閱 WinPE:優化和壓縮映像

認可變更並取消掛接映像

如果您已在 WinPE 映射中新增額外的檔案,您可以將其刪除,以減少映像大小並改善效能。 當您完成映像使用時,您可以認可變更並取消掛接映像。 然後將自訂的 WinPE 映像匯出至您的 WinPE 資料夾:

dism /unmount-image /mountdir:c:\winpe_amd64\mount /commit
dism /export-image /sourceimagefile:c:\winpe_amd64\media\sources\boot.wim /sourceindex:1 /DestinationImageFile:c:\winpe_amd64\mount\boot2.wim
Del c:\winpe_amd64\media\sources\boot.wim
Copy c:\winpe_amd64\mount\boot2.wim c:\winpe_amd64\media\sources\boot.wim

建立可開機的 WinPE 磁碟驅動器

既然您已更新 WinPE 映射以包含所需的一切,您可以建立可開機的 WinPE 磁碟驅動器。 從部署與映像處理工具環境:

  1. 連線 USB 金鑰給技術人員電腦。

  2. 將 WinPE 複製到 WinPE 磁碟分區:

    MakeWinPEMedia /UFD C:\winpe_amd64 P:
    

    其中 P: 是 WinPE 磁碟驅動器的字母。

    出現提示時,請按 Y 格式化磁碟驅動器並安裝 WinPE。

將參照電腦開機至 WinPE

  1. 連線 USB 磁碟驅動器到您的參考裝置。

  2. 關閉參考裝置,然後開機到USB磁碟驅動器。 您通常會在裝置上開啟電源並快速按下按鍵來執行此動作(例如 Esc 鍵或 音量向上 鍵)。

    注意

    在某些裝置上,您可能需要進入開機功能表,以選擇USB磁碟驅動器。 如果您在 UEFI 模式或 BIOS 模式開機之間進行選擇,請選擇 UEFI 模式。 若要深入瞭解,請參閱 開機至 UEFI 模式或舊版 BIOS 模式。 如果裝置未從 USB 磁碟驅動器開機,請參閱 WinPE:建立 USB 可開機磁碟驅動器中的疑難解答秘訣。

    WinPE 會從命令行開始,然後執行 wpeinit 以設定系統。 這可能需要數分鐘的時間。

目前將此電腦開機至 Windows PE。 您可以移除可開機的 USB 磁碟驅動器。

自定義 Windows 映像

既然您已針對部署自定義 WinPE 映射,我們將瞭解如何讓您的 Windows 映像準備好進行部署。 此程式類似於我們變更 WinPE 映像的方式,但 Windows 有許多額外的自定義選項。

您可以離線或線上自訂 Windows 映像。 從技術人員計算機或目的地電腦開機進入 WinPE 時,離線自定義專案會從 Windows 映射 (install.wim) 完成。 在大部分情況下,離線自定義是從技術人員計算機執行的自定義。 在線自定義會在[參考計算機] 開機進入稽核模式之後完成。

下表顯示哪些自定義專案可以在在線和離線進行。 在製造環境中,建議盡可能脫機進行盡可能多的自定義。

案例 離線 線上存取
新增設備驅動器 X X
新增 Microsoft Store 應用程式 X X
新增桌面應用程式 (win32) 應用程式 - X
新增語言套件 X X
拿掉預設語言套件 X -
新增功能隨選 X X
新增最新的累積更新 X X
影像優化 X X
Microsoft Store 應用程式重複的檔案清除 X -
Microsoft Office X X

準備和掛接 Windows 映像

掛接和自定義程式,顯示您將映像掛接至資料夾、新增驅動程式、語言、套件等來修改掛接的映像。然後使用 DISM 將變更儲存至映像,並將其卸除。

在本節中,我們將討論如何在您的技術人員計算機上掛接 Windows 映射。 掛接 Windows 映像與我們先前用來掛接 WinPE 映像的程式相同。 當我們掛接 Windows 映射 (install.wim), 我們將能夠存取第二個映射 WinRe.wim,這是支持復原案例的映像。 同時更新 install.wim 和 WinRE.wim 可協助您讓兩個映像保持同步,以確保復原如預期般運作。

在繼續之前,請確定您已在技術人員計算機上建立 C:\Temp\Lab 資料夾。 我們示範如何在取得您需要的工具一節中設定它。

備份您的 Windows 映像檔

在處理 Windows 映射之前,您想要確定您有備份複本,以防發生問題。 製作原始映像的複本:

首先,將 install.wim 從 Windows 安裝媒體複製到 C:\temp\lab\images。 Install.wim 同時包含 Home 和 Professional 映射。 我們將從 install.wim 導出 Home 映射,然後在此實驗室期間使用該映像。

  1. 掛接 Windows 安裝媒體。

  2. 從掛接的安裝媒體,將 D:\sources\install.wim 複製到 C:\temp\lab\images。 (其中 D: 是掛接安裝媒體的驅動器號。

  3. 從 [開始] 功能表 開啟 Windows Kits,以系統管理員身分開啟部署和映射工具環境

  4. 萬一發生問題,請製作影像的複本。

    copy "C:\temp\lab\Images\install.wim" C:\temp\lab\Images\install-backup.wim
    
  5. 將 Home edition (index 2) 從 install.wim 匯出為 basicimage.wim,並刪除原始 C:\temp\lab\images\install.wim:

    Dism /export-image /sourceimagefile:C:\temp\lab\images\install.wim /sourceindex:2 /destinationimagefile:C:\temp\lab\images\basicimage.wim
    Del C:\temp\lab\images\install.wim
    

    現在您已匯出映射,您可以掛接它。

裝載 Windows 映像

建立掛接目錄並掛接 basicimage.wim:

Md C:\mount\windows
Dism /Mount-Wim /WimFile:C:\temp\lab\images\basicimage.wim /index:1 /MountDir:C:\mount\windows

裝載您的 WinRE 映像

如果系統無法順利開機進入 Windows,則會故障轉移至 Windows 修復環境 (WinRE)。 WinRE 可以修復無法啟動作業系統的常見原因。 WinRE 是以 WinPE 為基礎,為了讓它適用於您的客戶,您可以新增驅動程式、語言、Windows PE 選用元件和其他疑難解答和診斷工具。

WinRE 映射包含在 Windows 映射內,最後會複製到目的地電腦或裝置上的 Windows RE 工具磁碟分區。 若要修改 WinRE 映射,您將掛接 Windows 映射,然後在其中掛接 WinRE 映射。 進行變更、取消掛接 WinRE 映射,然後取消掛接 Windows 映射。

顯示您可以掛接和 Windows 映射的影像,然後從掛接映射的掛接資料夾掛接映射,以便設定兩個巢狀映像。

如果您要將下列任一項新增至映像,則也應該使用相同的變更來更新復原映射:

  • 新增開機關鍵 .inf 樣式驅動程式,例如圖形和儲存驅動程式。
  • 將主要更新新增至 Windows,例如 LCU。
  • 新增語言,雖然這並非總是可能的,因為並非所有語言都有 Windows RE 對等專案。

注意

此實驗室假設您寧願在install.wim內保留 winre.wim,讓語言和驅動程式保持同步。如果您想要在處理站台節省一點時間,而且您可以分開管理這些映像,建議您從映像中移除 winre.wim,並個別套用它。

  • 從裝載的映像裝載 Windows RE 映像檔案。

    Md c:\mount\winre
    Dism /Mount-Wim /WimFile:C:\mount\windows\Windows\System32\Recovery\winre.wim /index:1 /MountDir:C:\mount\winre
    

    提示

    如果在指定的目錄下看不到 winre.wim,請使用下列命令設定來使檔案可見:

    attrib -h -a -s C:\mount\windows\Windows\System32\Recovery\winre.wim
    

    疑難解答:如果掛接作業失敗,請確定您使用的是部署和映像處理工具環境的 DISM。 請勿將映像掛接至受保護的資料夾,例如User\Documents資料夾。 如果 DISM 程序中斷,請考量暫時中斷網路連線並停用防毒保護。

離線自定義

掛接映射之後,您就可以開始自定義。 我們將示範如何對 Windows 映像進行離線自定義。 離線自定義是您可以對掛接映像所做的變更,而不需要開機進入 Windows 安裝。 首先,我們將逐步解說從您的 Windows 映像新增(和移除)語言。

語言

在本節中,我們將說明如何將語言新增至 Windows 安裝。 如果您想要新增語言,您需要來自 Languaged 和 Optionsl Features ISO 的語言套件,以及因特網連線或功能隨選 ISO 的存取權。

注意

  • 新增累積更新 (LCU) 之前新增語言。 如果您在累積更新之後新增語言,則必須重新安裝更新。
  • 在語言和功能隨選之後新增應用程式。 如果您在安裝應用程式之後新增語言,則必須重新安裝通用 Windows 應用程式和傳統型應用程式。
  • 也請將您的語言新增至復原映射:許多通用語言都可以新增至您的復原映像。

一律使用符合 Windows 映像語言和平台的語言套件和功能隨選 (FOD) 套件。

隨選功能 (FOD) 是隨時可新增的 Windows 功能套件。 當使用者需要新功能時,他們可以從 Windows Update 要求功能套件。 OEM 可以預安裝這些功能,以在現成的裝置上啟用這些功能。

常見功能包括手寫辨識等語言資源。 需要其中一些功能才能啟用完整的 Cortana 功能。

下表顯示可用的語言元件類型:

元件 範例檔名 相依性 描述
語言套件 Microsoft-Windows-Client-Language-Pack_x64_de-de.cab UI 文字,包括基本的 Cortana 功能。
基本 Microsoft-Windows-LanguageFeatures-Basic-de-de-Package 如果語言可用,拼字檢查、文字預測、斷詞和斷字。 您必須先新增此元件,才能新增下列任何元件。
字型 Microsoft-Windows-LanguageFeatures-Fonts-Thai-Package 某些區域所需的字型。 例如,th-TH 需要泰文字型套件。
光學字元辨識 Microsoft-Windows-LanguageFeatures-OCR-de-de-Package 基本 辨識並輸出影像中的文字。
手寫辨識 Microsoft-Windows-LanguageFeatures-Handwriting-de-de-Package 基本 針對具有手寫筆輸入的裝置啟用手寫識別。
文字轉換語音 Microsoft-Windows-LanguageFeatures-TextToSpeech-de-de-Package 基本 啟用 Cortana 和朗讀程式所使用的文字到語音轉換。
語音辨識 Microsoft-Windows-LanguageFeatures-Speech-de-de-Package 基本文字到語音辨識 辨識 Cortana 和 Windows 語音所使用的語音輸入
零售示範體驗 Microsoft-Windows-RetailDemo-OfflineContent-Content-de-de-Package 基本,加上語言中性零售示範套件:Microsoft-Windows-RetailDemo-OfflineContent-Content-Package 零售示範體驗

新增或變更語言

在本節中,我們會將語言和功能隨選新增至您的 Windows 映射。 我們將新增德文 (de-de) 語言套件,然後新增日文 (ja-jp) 語言。 日文是需要額外字型支援的語言範例。

重要

如果您在安裝語言套件之前安裝包含語言相依資源的更新,則當您新增語言套件時,將不會套用更新中的特定語言變更。 您必須重新安裝更新,以套用特定語言的變更。 若要避免重新安裝更新,請先安裝語言套件和功能隨選再安裝更新。

語言更新有一個需要安裝的特定順序。 例如,若要啟用 Cortana,請依序安裝:Microsoft-Windows-Client-Language-Pack、-Basic、OCR、Handwriting、–Fonts、–TextToSpeech 和 –Speech。

新增語言

掛接語言和選擇性功能 ISO。 當我們新增語言元件和功能隨選時,我們會使用掛接的 ISO 作為這些套件的來源。 使用語言和選擇性功能 ISO 作為來源,可確保影像中的 FOD 更新為包含您所新增語言的語言資源。 下列範例使用 F:\ 作為掛接的 Languaes 和選擇性功能 ISO 的位置。

  1. 新增德文語言套件。

    從語言和選擇性功能 ISO 使用語言套件和功能隨選功能:

    Dism /Add-Package /Image:C:\mount\windows /PackagePath:F:\LanguagesAndOptionalFeatures\Microsoft-Windows-Client-Language-Pack_x64_de-de.cab 
    
  2. 新增相關聯的語言功能隨選

    Dism /Add-Capability /Image:C:\mount\windows /CapabilityName:Language.Basic~~~de-DE~0.0.1.0 /CapabilityName:Language.OCR~~~de-DE~0.0.1.0 /CapabilityName:Language.Handwriting~~~de-DE~0.0.1.0 /CapabilityName:Language.TextToSpeech~~~de-DE~0.0.1.0 /CapabilityName:Language.Speech~~~de-DE~0.0.1.0 /Source:F:\LanguagesAndOptionalFeatures
    
  3. (選擇性)視需要新增日文語言套件和功能。

    某些特定語言字型會分成不同的語言元件。 在本節中,我們將新增ja-JP語言,以及日文字型的支援。

    使用 64 位 ISO 的語言套件和功能隨選:

    1. 新增日文語言套件:
    Dism /Add-Package /Image:C:\mount\windows /PackagePath:F:\LanguagesAndOptionalFeatures\Microsoft-Windows-Client-Language-Pack_x64_ja-jp.cab 
    
    1. 視需要新增日文語言功能
    Dism /Add-Capability /CapabilityName:Language.Basic~~~ja-JP~0.0.1.0 /CapabilityName:Language.OCR~~~ja-JP~0.0.1.0 /CapabilityName:Language.Handwriting~~~ja-JP~0.0.1.0 /CapabilityName:Language.Fonts.Jpan~~~und-JPAN~0.0.1.0 /CapabilityName:Language.TextToSpeech~~~ja-JP~0.0.1.0 /CapabilityName:Language.Speech~~~ja-JP~0.0.1.0 /Source:F:\LanguagesAndOptionalFeatures
    
  4. 確認語言套件現在是掛接映像的一部分:

    dism /get-packages /image:"C:\mount\windows"
    

    請確定新增的語言位於清單中。

    Package Identity : Microsoft-Windows-Client-LanguagePack  ...  de-DE~10.0.22000.1
    State : Installed
    
  5. 確認 [隨選功能] 位於您的映射中:

    dism /get-capabilities /image:"C:\mount\windows"
    

    請確定語言 FOD 位於清單中:

    Capability Identity : Language.Basic~~~de-de~0.0.1.0
    State : Installed
    ...
    Capability Identity : Language.Handwriting~~~de-de~0.0.1.0
    State : Installed
    

設定語言設定

本節說明如何變更所掛接 Windows 映像的默認語言和時區。

  1. 使用 DISM 來設定影像的預設語言。 我們將默認語言設定為德文,因為我們已在先前的步驟中將它新增至影像中。

    Dism /Image:C:\mount\windows /Set-AllIntl:de-DE
    
  2. 驗證您的變更

    Dism /Image:C:\mount\windows /Get-Intl
    

設定預設時區

您可以使用 DISM 來設定電腦的預設時區。 在這裡,我們將設定時區。 如需可用時區的清單,請參閱 預設 時區。

Dism /Set-TimeZone:"W. Europe Standard Time" /Image:"C:\mount\windows"

從映像移除基底語言

本節涵蓋從 Windows 映射移除語言。 這是選擇性步驟。

既然我們的影像已設定為使用德文作為默認語言,我們可以從中移除英文功能,並將其設為非英文影像。 若要完全從映像中移除 en-US,您必須移除數個元件。

警告

如果您要以英文寄送計算機,請勿移除英文基礎語言。

從 64 位映像移除語言元件:

dism /image:"c:\mount\windows" /remove-package /packagename:Microsoft-Windows-Client-LanguagePack-Package~31bf3856ad364e35~amd64~en-US~10.0.22000.1 /packagename:Microsoft-Windows-LanguageFeatures-Basic-en-us-Package~31bf3856ad364e35~amd64~~10.0.22000.1 /packagename:Microsoft-Windows-LanguageFeatures-Handwriting-en-us-Package~31bf3856ad364e35~amd64~~10.0.22000.1 /packagename:Microsoft-Windows-LanguageFeatures-OCR-en-us-Package~31bf3856ad364e35~amd64~~10.0.22000.1 /packagename:Microsoft-Windows-LanguageFeatures-Speech-en-us-Package~31bf3856ad364e35~amd64~~10.0.22000.1 /packagename:Microsoft-Windows-LanguageFeatures-TextToSpeech-en-us-Package~31bf3856ad364e35~amd64~~10.0.22000.1 /packagename:Microsoft-Windows-RetailDemo-OfflineContent-Content-en-us-Package~31bf3856ad364e35~amd64~~10.0.22000.1

提示

疑難解答:如果執行這些命令時發生錯誤,請在失敗的套件上再試一次命令。 範例:

Error: 0x800f0825
Package Microsoft-Windows-LanguageFeatures-Basic-en-us-Package may have failed due to pending updates to servicing components in the image.

如果命令完成並出現錯誤,請檢查 DISM 記錄檔。 位於 C:\windows\Logs\DISM\dism.log。

將語言新增至 Windows RE

我們將在這裡示範如何將語言新增至 WinRE。 將語言新增至 WinRE 可確保客戶預期的語言可在復原案例中使用。 如果您將語言新增至 Windows 映像,請遵循下列步驟。

下列範例會使用掛接語言和選擇性功能 ISO 中的套件,以及 ADK 中的套件:

  1. 新增德文語言套件

    使用 64 位版本的語言套件和 WinPE 選用元件:

    Dism /image:F:\Windows Preinstallation Environment\x64\WinPE_OCs\de-de\lp.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\de-de\WinPE-Rejuv_de-de.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\de-de\WinPE-EnhancedStorage_de-de.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\de-de\WinPE-Scripting_de-de.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\de-de\WinPE-SecureStartup_de-de.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\de-de\WinPE-SRT_de-de.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\de-de\WinPE-WDS-Tools_de-de.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\de-de\WinPE-WMI_de-de.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\de-de\WinPE-StorageWMI_de-de.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\de-de\WinPE-HTA_de-de.cab"
    
  2. (選擇性)將日文語言套件和字型支援新增至 WinRE。 請注意,對於日文,我們將新增一個用於字型支持的額外 cab。

    使用來自 64 位 ISO 的語言套件和 WinPE 選用元件:

    Dism /image:C:\mount\winre /add-package /packagepath:"F:\Windows Preinstallation Environment\x64\WinPE_OCs\ja-jp\lp.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ja-jp\WinPE-Rejuv_ja-jp.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ja-jp\WinPE-EnhancedStorage_ja-jp.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ja-jp\WinPE-Scripting_ja-jp.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ja-jp\WinPE-SecureStartup_ja-jp.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ja-jp\WinPE-SRT_ja-jp.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ja-jp\WinPE-WDS-Tools_ja-jp.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ja-jp\WinPE-WMI_ja-jp.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ja-jp\WinPE-StorageWMI_ja-jp.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ja-jp\WinPE-HTA_ja-jp.cab"
    Dism /image:C:\mount\winre /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ja-jp\WinPE-FontSupport-JA-JP.cab"
    
  3. 設定 WinRE 的預設語言以符合預設 Windows 語言。

    Dism /Image:C:\mount\winre /Set-AllIntl:de-DE
    

從 WinRE 移除基底語言 (選擇性)

類似於在 install.wim 中移除基底語言,我們也可以從 WinRE 移除基底語言。

從 64 位映像移除語言元件:

Dism /image:"c:\mount\winre" /remove-package /packagename:Microsoft-Windows-WinPE-LanguagePack-Package~31bf3856ad364e35~amd64~en-US~10.0.22000.1 /packagename:WinPE-EnhancedStorage-Package~31bf3856ad364e35~amd64~en-US~10.0.22000.1 /packagename:WinPE-HTA-Package~31bf3856ad364e35~amd64~en-US~10.0.22000.1 /packagename:WinPE-Rejuv-Package~31bf3856ad364e35~amd64~en-US~10.0.22000.1 /packagename:WinPE-Scripting-Package~31bf3856ad364e35~amd64~en-US~10.0.22000.1 /packagename:WinPE-SecureStartup-Package~31bf3856ad364e35~amd64~en-US~10.0.22000.1 /packagename:WinPE-SRT-Package~31bf3856ad364e35~amd64~en-US~10.0.22000.1 /packagename:WinPE-StorageWMI-Package~31bf3856ad364e35~amd64~en-US~10.0.22000.1 /packagename:WinPE-WDS-Tools-Package~31bf3856ad364e35~amd64~en-US~10.0.22000.1 /packagename:WinPE-WMI-Package~31bf3856ad364e35~amd64~en-US~10.0.22000.1

驅動程式

您應該新增驅動程式,以確保 Windows 可以第一次成功開機,而且可以連線到因特網和 Windows Update。 映像不應依賴硬體的任何第三方收件匣驅動程式套件。 請確定您已將驅動程式新增至正確的映像:

  • DCHU 驅動程式:許多驅動程式都包含資訊檔(擴展名為 .inf),以協助安裝驅動程式。 您可以使用本節所述的工具來安裝這些專案。
  • 開機關鍵驅動程式:圖形和儲存驅動程式有時可能需要新增至 Windows 映像(如本實驗室所示)、Windows PE 映射,以及 WindowsRE 映射中。

下列示範如何以各種方式新增驅動程式。

提示

如果您要建立數個具有相同硬體組態的裝置,您可以藉由在擷取 Windows 映射時維護驅動程序設定,以加快安裝時間和第一次開機時間。

將驅動程式新增至 Windows 映像

  1. 新增包含 .inf 檔案的單一驅動程式。 在此範例中,我們使用名為 media1.inf 的驅動程式:

    Dism /Add-Driver /Image:"C:\mount\windows" /Driver:"C:\Drivers\PnP.Media.V1\media1.inf"
    

    其中 「C:\Drivers\PnP.Media.V1\media1.inf」 是驅動程式套件中的基底 .inf 檔案。

  2. 如果您想要新增驅動程式的整個資料夾,您可以使用 /Recurse 選項。 這會新增資料夾中的所有 .inf 驅動程式及其所有子資料夾。

    警告

    雖然 /Recurse 可能很方便,但很容易用到您的影像膨脹。 某些驅動程式套件包含多個 .inf 驅動程式套件,這些套件通常會從相同的資料夾共用承載檔案。 安裝期間,每個 .inf 驅動程式套件都會擴充成個別的資料夾,每個資料夾都有承載檔案的複本。 我們看到了使用 /Recurse 選項新增時,900MB 資料夾中熱門驅動程式將 10GB 新增至影像的情況。

    Dism /Add-Driver /Image:"C:\mount\windows" /Driver:c:\drivers /Recurse
    
  3. 確認驅動程式是映像的一部分:

    Dism /Get-Drivers /Image:"C:\mount\windows"
    

    檢查套件清單,並確認清單包含您新增的驅動程式。

將驅動程式新增至您的 WinRE 映像

如果您已將驅動程式新增至 Windows 映像,則也應該將它們新增至您的 WinRE 映射。 將驅動程式新增至您的復原映像可確保它們可在復原案例期間使用。 將驅動程式新增至 WinRE 映像的程式與將驅動程式新增至一般 Windows 映像的程式相同。

Dism /Add-Driver /Image:"C:\mount\winre" /Driver:"C:\Drivers\PnP.Media.V1\media1.inf" /LogPath=C:\mount\dism.log

注意

您可以使用 /recurse 選項來新增驅動程式的整個資料夾

更新

掛接映射時,您可以新增 Windows 更新。 此程式類似於我們稍早用來新增驅動程式的程式。

提醒:

  • 先新增語言再安裝主要更新。 主要更新包括 Hotfix、一般發行版本或 Service Pack。 如果您稍後新增語言,則必須重新新增更新。
  • 先新增重大更新再安裝應用程式。 這些應用程式包括通用 Windows 應用程式和傳統型應用程式。 如果您稍後新增更新,則必須重新新增應用程式。
  • 針對主要更新,請更新復原映射:這可能包括 Hotfix、一般散發版本、Service Pack 或其他發行前版本更新。 我們將說明如何在稍後的實驗室 12:更新復原映射中更新這些專案。
  • 如果需要服務堆疊更新 (SSU),您必須先套用它,才能套用最新的一般散發版本或任何未來的 GDR。

將 Windows 更新新增至您的映像

使用 DISM 來套用最新的服務堆疊更新 (SSU)、最新的累積更新 (LCU)、ZDP 更新或任何必要條件 KB 更新。

重要

如果您在安裝語言套件之前安裝包含語言相依資源的更新,則當您新增語言套件時,將不會套用更新中的特定語言變更。 您必須重新安裝更新,以套用特定語言的變更。 若要避免重新安裝更新,請先安裝語言套件,再安裝更新。

  1. 取得 Windows Update 套件。 將 .msu 檔案更新解壓縮到資料夾,例如 E:\updates\windowsupdatename.msu。 請確定您的更新符合您正在使用之映像的架構。

  2. 使用 dism /add-package將 msu 新增至掛接的映像。

    Dism /Add-Package /Image:C:\mount\windows /PackagePath:"E:\updates\windows10.0-kb4000001-x64.msu"
    

    您也可以在相同的指令中新增多個更新:

    Dism /Add-Package /Image:C:\mount\windows /PackagePath:"E:\updates\windows10.0-kb4000001-x64.msu" /PackagePath:"E:\updates\windows10.0-kb0000002-x64.msu"
    

    注意

    每個套件通常是增加 Windows 組建修訂編號的新 KB。 您可以在下列登入機碼中找到視窗的編號: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\UBR

  3. 鎖定更新,以確保它在復原期間還原。

    DISM /Cleanup-Image /Image=C:\mount\windows /StartComponentCleanup /ScratchDir:C:\Temp
    
  4. 確認更新位於映像中。

    Dism /Image:C:\mount\windows /Get-Packages
    

    檢閱產生的套件清單,並確認清單包含套件。 例如:

    Package Identity : Package_for_RollupFix~31bf3856ad364e35~amd64~~22000.250.1.1
    State : Installed
    Release Type : Security Update
    Install Time : 04/29/2017 6:26 PM
    The operation completed successfully.
    

將更新套件新增至 WinRE

在本節中,我們將說明如何將更新新增至 WinRE 映射。

重要

除了 Windows 映射之外,您必須將累積更新套用至您的 WinRE 映像。 因為更新是累積的,因此安裝新的更新時,可以移除舊的更新。 我們稍後在實驗室中涵蓋的 WinRE 優化將會移除不必要的更新,讓 WinRE 映像的大小不會成長。

若要將您在上一節下載的更新套用至 WinRE 映射,您必須執行 dism /add-package ,將更新套用至掛接的 WinRE 映像。

Dism /Add-Package /Image:C:\mount\winre /PackagePath:"E:\updates\windows10.0-kb4000001-x64.msu"

應用程式和功能

應用程式

本節涵蓋使用應用程式,包括更新后重新安裝收件匣應用程式、如何新增 Microsoft Store 應用程式,以及如何新增 Microsoft Office。

本節會繼續使用已掛接的 Windows 映射。 如果您的映像尚未掛接,請掛接它。

提醒:只有在您依該順序安裝語言和更新之後,才安裝應用程式。

重新安裝收件匣應用程式

既然您已將語言和更新新增至映像,您必須重新安裝 Windows 隨附的應用程式。 這可確保應用程式能夠運作,並包含您已新增至映像的語言。 若要重新安裝這些應用程式,您需要應用程式更新 OPK 或收件匣應用程式 ISO。

  1. 將收件匣應用程式 ISO 上的 amd64fre 資料夾複製到 c:\temp\lab\apps\inbox\
  2. 重新安裝收件匣應用程式,以確保應用程式具有所需的語言資源。 [ 範例腳本] 頁面 有範例腳本,但它只是範例,而且不一定重新安裝映射中的所有收件匣應用程式。 請務必使用您自己的腳本,其中包含您裝置上的所有應用程式。

您的應用程式現在已準備好使用您的映像。

新增 Microsoft Store 應用程式

若要完成本節,您必須擁有應用程式更新 OPK 或收件匣應用程式 ISO。 無論您使用哪一個,我們會在下列步驟中將它稱為應用程式更新 OPK。

  1. 使用 DISM 從您在上一節中擷取的檔案新增 HEVC 編解碼器.appx。

  2. 安裝 HEVC .appx:

    DISM /Add-ProvisionedAppxPackage /Image:c:\mount\windows /PackagePath:"C:\temp\lab\apps\amd64\Microsoft.HEVCVideoExtension_8wekyb3d8bbwe.x64.appx" /licensepath:"C:\temp\lab\apps\inbox\amd64\Microsoft.HEVCVideoExtension_8wekyb3d8bbwe.x64.xml" /DependencyPackagePath:"C:\temp\lab\apps\inbox\amd64\Microsoft.VCLibs.x64.14.00.appx"
    
  3. 使用 DISM /Add-ProvisionedAppxPackage 將任何其他應用程式新增至您的影像。

  4. 確認已安裝應用程式:

    Dism /Image:"C:\mount\windows" /Get-ProvisionedAppxPackages
    

優化已安裝的應用程式

您可以在安裝應用程式之後執行 DISM /Optimize-ProvisionedAppxPackages ,以減少應用程式磁碟使用量。 此指令只有在針對離線映像執行時才能運作:

DISM.exe /Image:"C:\mount\windows" /Optimize-ProvisionedAppxPackages

預安裝 Microsoft Office

請遵循最新 Office OEM 預安裝指南中的指示,以瞭解要預安裝哪些 Office 版本,以及如何安裝。

功能隨選安裝

將功能隨選 (FOD) 新增至您的 Windows 映射。 功能隨選 是您可以選擇預安裝的功能。 您可以在這裡看到可用FOD的清單,以及預安裝的建議。

在這裡,我們將示範如何預安裝 .Net Framework 功能隨選。

注意

雖然可以使用 /add-package 選項新增一些 FOD,但使用 DISM /Add-Capability 是新增 FOD 的建議方式。

  1. 如果尚未掛接,請掛接語言和選擇性功能 ISO

  2. 在您的技術人員電腦上,使用 DISM 取得映像中可用的 FOD 清單:

    dism /image:C:\mount\windows /get-capabilities
    

    這會顯示可用功能的清單。

  3. 新增 .NET Framework。

    dism /image:C:\mount\windows /add-capability /capabilityname:NetFX3~~~~ /Source:F:\LanguagesAndOptionalFeatures
    

    其中 F: 是掛接的 FOD ISO,而 NetFX3~~~~ 是 .NET Framework 功能名稱。

    .NET Framework 現在已新增至您的映像。

  4. 如果您有其他 FOD 可包含在映像中,請加以新增。

[開始] 功能表和任務列

自訂 [開始] 功能表 釘選

修改 \[開始\] 配置

OEM 可以自定義 \[開始\] 配置,以便 OEM 定義的專案(應用程式和/或網站)釘選在 [開始] 功能表 的特定區域中。

[開始] 版面配置自定義是使用 LayoutModification.json 和 設定,選擇性地 LayoutModification.xml

  • LayoutModification.json 提供應用程式釘選的完整支援
  • LayoutModification.xml 啟用將網站釘選新增至 LayoutModification.json

注意

您無法使用 Windows 設定設計工具或自動安裝來設定 Windows 11 [開始] 選單。

請參閱自定義 Windows 11 [開始] 功能表

可自定義的區段

釘選區段

[開始] 功能表 頂端的 區段稱為 [釘選] 區段。 本節包含方格中排列的針腳。 本節中的專案是計算機上安裝的所有應用程式子集;並非所有已安裝的應用程式預設都會包含在本節中。 此檢視中的數據列和項目數目在裝置面板大小之間是一致的。

雖然本節的初始檢視會顯示18個專案,但使用者可以使用分頁控件來移動其他針腳的頁面。 本節中的專案是 Microsoft 定義的應用程式、動態傳遞的應用程式和 OEM 設定項目的組合。 設定計算機之後,使用者可以在此區段中新增、移動或移除釘選。

可用的自訂項目

  • 本節第 1 頁最多四個專案。 在 LayoutModification.json 設定 primaryOEMPins
  • 釘選應用程式方格底部最多四個專案。 用戶必須在 [開始] 功能表 中向下卷動,才能看到這些釘選。 在 LayoutModification.json 設定 secondaryOEMPins

如果您在這兩個區段中釘選少於四個專案,其他 Microsoft 定義的應用程式將會滑過以填滿空間,以維持相同的順序。 將忽略前四個以外的任何陣列元素。

注意

專案只能出現在 [釘選] 區段中一次。 您無法在本節中的多個位置釘選應用程式,不論是在同一個頁面或不同頁面上。

這是「釘選」區段下方的區段。 在第一次開機時, 會在此位置預先填入 Microsoft 的開始使用應用程式 。 OEM 也可以預先填入區段,其中包含歡迎或初次執行體驗應用程式,除非客戶將其移除,否則將持續釘選最多七天。

可用的自定義:本節中的一個專案。 在 LayoutModification.json 設定 firstRunOEMPins

  • 為了獲得最佳且最簡潔的用戶體驗,我們建議針對 [建議] 區段選擇的應用程式不會預先釘選到任務欄或開始釘選的第一頁。

將釘選新增至 [開始] 功能表

本節說明如何將釘選新增至 [開始] 功能表 的可自定義區域。

  • 若要釘選 UWP 應用程式,您必須知道其 AUMID。
  • 如果您要釘選網頁連結,則必須使用 Windows 10 計算機建立網頁連結磚,然後匯出包含網頁連結的版面配置。 請參閱 匯出開始配置 ,以瞭解如何匯出開始配置。
  • 解壓縮的 Win32 應用程式會使用指向應用程式的.lnk檔案。
  1. 在您的技術人員計算機上,建立名為的 LayoutModification.json空白檔案。

  2. 將下列空白 LayoutModification.json 貼入您在上一個步驟中建立的檔案:

    { "primaryOEMPins": [ 
      ], 
      "secondaryOEMPins": [ 
      ], 
      "firstRunOEMPins": [ 
      ] 
    } 
    
  3. 針對您想要釘選的應用程式類型新增 JSON 成員,以自訂每個區段以新增應用程式。

    1. 我們將從將命令提示字元釘選為主要 OEM 針腳開始。 由於命令提示字元是未封裝的 Win32 應用程式,因此會新增為 desktopAppLink
    { "primaryOEMPins": [ 
        { "desktopAppLink": "%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\System Tools\\Command Prompt.lnk"}
      ], 
      "secondaryOEMPins": [ 
      ], 
      "firstRunOEMPins": [ 
      ] 
    } 
    
    1. 接下來,我們將使用UWP應用程式作為次要 OEM 釘選,使用其AUMID,並使用 packagedAppID加以新增。 此釘選會出現在 [開始] 功能表 結尾。 以下是新增至我們的版面配置的範例 UWP 應用程式:
    { "primaryOEMPins": [ 
        { "desktopAppLink": "%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\System Tools\\Command Prompt.lnk"}
      ], 
      "secondaryOEMPins": [ 
        { "packagedAppId": "OEM.App1_1abcde2f3ghjk!App"}
      ], 
      "firstRunOEMPins": [ 
      ] 
    } 
    
    1. 最後,我們會將應用程式新增至 [建議] 區段。 您可以將一個應用程式新增至本節。 您釘選的應用程式不會是永久的;它會隨著時間而消失,因為計算機已使用,且新專案會填入 [建議] 區段:
    { "primaryOEMPins": [ 
        { "desktopAppLink": "%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\System Tools\\Command Prompt.lnk"}
      ], 
      "secondaryOEMPins": [ 
        { "packagedAppId": "OEM.App1_1abcde2f3ghjk!App"}
      ], 
      "firstRunOEMPins": [ 
        { "desktopAppLink": "%ALLUSERSPROFILE%\\Microsoft\\Windows\\Start Menu\\Programs\\PutMeInRecommended.lnk" }
      ] 
    } 
    
  4. 如果您要建立 Web 連結以新增至您的 [開始] 功能表:

    若要將網頁連結釘選到 [開始] 功能表,您必須同時擁有 LayoutModification.jsonLayoutModification.xml 檔案。

    網頁連結同時使用LayoutModification.xml和LayoutModification.json。 LayoutModification.json中指定的每個 Web 連結都必須有LayoutModification.xml中的對應 SecondaryTile 專案:

    • LayoutModification.xml可用來設定 Web 連結
    • LayoutModification.json參考已設定的 Web 連結

    使用導出的 \[開始\] 配置釘選網頁連結

    您匯出的 \[開始\] 設定將包含 SecondaryTile 您已設定之每個網頁連結的元素。 記下 AppUserModelIDTileID 專案。 您將將這些內容新增至您的LayoutModification.json,以釘選網頁連結。

    範例 Web 釘選

    以下是來自LayoutModification.xml的 Web 釘選範例:

    <start:SecondaryTile 
    AppUserModelID="Microsoft.MicrosoftEdge.Stable_8wekyb3d8bbwe!App" 
    TileID="MSEdge.anfoedbkjbcacemdbigf.UserData.Default" 
    Arguments="--launch-tile --profile-directory=Default --app-id=anfoedbkjbhcfgooaffkopcacemdbigf --app-url=https://www.bing.com/" 
    DisplayName="(Text of your choice to display in Start)" 
    Square150x150LogoUri="msappdata:///local/Favicons/Taskbar/‌anfoedbkjbhcfgooaffkopcacemdbigf/largefavicon.png" 
    Wide310x150LogoUri="ms-appx:///" 
    ShowNameOnSquare150x150Logo="true" 
    ShowNameOnWide310x150Logo="false" 
    BackgroundColor="#000000" 
    Size="2x2" 
    Row="0" 
    Column="0"/> 
    

    將這個磚新增至LayoutModification.json,方法是在您要新增釘選的區段中新增 JSON 物件:

    • 針對 LayoutModification.json 中的值,使用 來自 AppUserModelID"Microsoft.MicrosoftEdge.Stable_8wekyb3d8bbwe!App"packageAppID 的屬性。
    • 針對 LayoutModification.json 中的值,使用 來自 TileID"MSEdge.anfoedbkjbcacemdbigf.UserData.Default"tileID 的屬性。

    以下是使用上述範例將 Web 鏈接釘選到 「Pinned」 區段底部的樣子:

    ... 
    "secondaryOEMPins": [ 
      { "packagedAppId": "Microsoft.MicrosoftEdge.Stable_8wekyb3d8bbwe!App", 
        "tileId": "MSEdge.anfoedbkjbcacemdbigf.UserData.Default" }, 
      ], 
    ...
    

    您可以將其他項目釘選到 [開始] 功能表。 以下是每個區段中包含多個專案的LayoutModification.json範例:

    { "primaryOEMPins": [ 
        { "packagedAppId": "OEM.App1_1abcde2f3ghjk!App"}, 
        { "desktopAppLink": "%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\System Tools\\Command Prompt.lnk"}, 
        { "packageAppId": "Microsoft.MicrosoftEdge.Stable_8wekyb3d8bbwe!App", 
            "tileId": "MSEdge.paomdnjincdkenhiicpl.UserData.Default"} 
        ], 
        "secondaryOEMPins": [ 
        { "packagedAppId": "Microsoft.MicrosoftEdge.Stable_8wekyb3d8bbwe!App", 
        "tileId": "MSEdge.anfoedbkjbcacemdbigf.UserData.Default" }, 
        { "desktopAppId": "Contoso.Desktop.Example.AUMID"} 
        ], 
        "firstRunOEMPins": [ 
        { "desktopAppLink": "%ALLUSERSPROFILE%\\Microsoft\\Windows\\Start Menu\\Programs\\PutMeInRecommended.lnk", 
            "caption": { 
            "en-US": "(localized caption text for US English)", 
            "de": "(localized caption text for German)", 
            "default": "(fallback caption text for other languages)" } 
        } 
        ] 
    } 
    
將版面配置新增至您的影像
  1. 複製 您的 LayoutModification.json 和,如果您釘選網頁連結,您的LayoutMofification.xml已掛接的映射。 Windows 會在 \Windows\Users\Default\Appdata\Local\Microsoft\Windows\Shell 資料夾中尋找這些檔案。 如果此資料夾已經包含 layoutmodification 檔案,請將現有的檔案取代為新的檔案(s):

    xcopy /s LayoutModification.json C:\Mount\Users\Default\Appdata\Local\Microsoft\Windows\Shell
    xcopy /s LayoutModification.xml C:\Mount\Users\Default\Appdata\Local\Microsoft\Windows\Shell
    
  2. 如果您已完成自定義映像,請使用認可變更將其卸除。

    dism /unmount-image /mountdir:C:\mount /commit
    

    否則,請保留掛接映射並移至下一節

自訂任務列配置

您可以將最多三個項目釘選到任務列。 若要釘選任務欄專案,您必須建立自定義TaskbarLayoutModification.xml檔案,然後設定登錄機碼來定義任務欄版面配置檔案的位置。

請參閱 自定義 Windows 11 任務列

  1. 以下是空的任務欄版面配置檔案。 將內容複製到名為 TaskbarLayoutModification.xml 的檔案:

    <?xml version="1.0" encoding="utf-8"?>
    <LayoutModificationTemplate
    xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification"
    xmlns:defaultlayout="http://schemas.microsoft.com/Start/2014/FullDefaultLayout"
    xmlns:start="http://schemas.microsoft.com/Start/2014/StartLayout"
    xmlns:taskbar="http://schemas.microsoft.com/Start/2014/TaskbarLayout"
    Version="1">
    
    <CustomTaskbarLayoutCollection PinListPlacement="Replace">
        <defaultlayout:TaskbarLayout>
            <taskbar:TaskbarPinList>
                <taskbar /> 
                <taskbar />
            </taskbar:TaskbarPinList>
        </defaultlayout:TaskbarLayout>
    </CustomTaskbarLayoutCollection>
    </LayoutModificationTemplate>
    
  2. 釘選傳統 Windows 應用程式:

    若要新增 傳統 Windows 應用程式,請新增 <taskbar:DesktopApp> 具有 DesktopApplicationLinkPath 屬性的專案,以指定快捷方式 (.lnk) 檔案的路徑。 我們建議在 [所有使用者] [開始] 功能表 中使用相同的快捷方式.lnk檔案。 範例:

    <taskbar:TaskbarPinList>
    <taskbar:DesktopApp DesktopApplicationLinkPath="%APPDATA%\Microsoft\Windows\Start Menu\Programs\System Tools\Command Prompt.lnk"/>
    </taskbar:TaskbarPinList>
    

    注意

    有些傳統 Windows 應用程式現在的封裝方式與舊版 Windows 不同。 若要深入瞭解,請參閱 記事本小畫家

  3. 新增UWP應用程式。 針對 通用 Windows 應用程式,新增 <Taskbar:UWA> 具有 AppUserModelID 屬性的 元素,以指定通用 Windows 應用程式的使用者模型識別碼 (AUMID)。 範例:

    <taskbar:TaskbarPinList>
    <taskbar:UWA AppUserModelID="Microsoft.Windows.Photos_8wekyb3d8bbwe!App"/>
    </taskbar:TaskbarPinList>
    

    請參閱 尋找已安裝應用程式 的應用程式使用者模型識別碼,以瞭解如何尋找已安裝應用程式的AUMID。

  4. 將檔案儲存為 C:\Mount\Windows\OEM\TaskbarLayoutModification.xml。

  5. 稍後在稽核中,我們會新增登錄機碼,以定義儲存TaskbarLayoutModification的位置。

新增許可協議和資訊檔案

新增 OEM 特定授權

在本節中,我們將討論 OEM 如何在 OOBE 期間新增自己的授權條款。

注意

如果包含授權條款,OEM 必須在預安裝到計算機上的每種語言中包含授權條款的版本。 授權字詞文字必須是.rtf檔案,且在相同資料夾中具有相符名稱的.html檔案。 如需授權文件的詳細資訊,請參閱 OEM 授權條款

若要開始新增授權條款,您必須建立授權文件的資料夾,然後設定 OOBE 在第一次開機時顯示授權。

  1. 在下列目錄下建立系統語言的資料夾:C:\mount\windows\Windows\System32\oobe\info\default\

  2. 將 C:mount\windows\Windows\System32\oobe\info\default\ 目錄下的每個資料夾命名為對應語言的語言十進位標識符。 針對 Windows 映像中的每個語言套件執行此步驟。

    注意: 請參閱 此連結,以查看對應語言的語言小數標識碼完整清單。

    例如,如果 en-us 和 de-de 語言套件新增至 Windows 映射,請在 C:\mount\windows\Windows\System32\oobe\info\default 中新增名為 “1033” 的資料夾(代表 en-us 語言)。 然後在相同的 C:\mount\windows\Windows\System32\oobe\info\default\ directory 底下新增名為 “1031” (de-de language) 的資料夾。

    MD c:\mount\windows\windows\system32\oobe\info\default\1031
    MD c:\mount\windows\windows\system32\oobe\info\default\1033
    
  3. 為映像中每個語言建立授權條款.rtf檔案,並將其複製到特定語言的 oobe 資料夾。

    例如:將英文agreement.rtf檔案移至 C:\mount\windows\Windows\System32\oobe\info\default\1033\ 目錄,並將德文agreement.rtf移至 C:\mount\windows\Windows\System32\oobe\info\default\1031。

    copy E:\resources\english-agreement.rtf c:\mount\windows\windows\system32\oobe\info\default\1033\agreement.rtf
    copy E:\resources\german-agreement.rtf c:\mount\windows\windows\system32\oobe\info\default\1031\agreement.rtf
    
  4. 開啟文字編輯器,並建立.html版本的授權條款。 將字詞儲存至與.rtf版本相同的資料夾。 您可以使用 OEM 授權條款中的 EULA 範例來建立範例檔案。 EULA 檔案的名稱應該相同,但擴展名除外。

    C:\mount\windows\windows\system32\oobe\info\default\1033\agreement.html  (English version)
    C:\mount\windows\windows\system32\oobe\info\default\1031\agreement.html  (German version)
    
  5. 建立oobe.xml檔案,以指定授權agreement.rtf檔案路徑。 Windows 會自動尋找隨附的.html檔案。 以下是範例oobe.xml。

     <FirstExperience>
    <oobe>
        <oem>
            <eulafilename>agreement.rtf</eulafilename>
        </oem>
    </oobe>
    </FirstExperience>
    
  6. 將oobe.xml檔案複製到 'C:\mount\windows\windows\system32\oobe\info\

  7. 將oobe.xml複製到您稍早建立的 laguage 特定資料夾。例如:將oobe.xml複製到 C:\mount\windows\Windows\System32\oobe\info\default\1033,其具有英文agreement.rtf檔案。 若要新增德文合約,請將oobe.xml複製到 C:\mount\windows\Windows\System32\oobe\info\default\1031\ 目錄,其中具有德文agreement.rtf檔案。

    copy E:\configset\oobe.xml c:\mount\windows\windows\system32\oobe\info\default\1033
    copy E:\configset\oobe.xml c:\mount\windows\windows\system32\oobe\info\default\1031
    
  8. 現在,每個語言資料夾都有對應語言中的oobe.xml、agreement.rtf和 agreement.thml 檔案。

映射第一次開機進入 OOBE 時,將會顯示許可協定。

建立映像資訊檔案,並將它新增至您的映像

  • 建立csup.txt檔案,以指定建立 Windows 映射的時間。 此檔案必須包含映像建立的日期,格式為 『MM-DD-YYYYY』,檔案頂端的單行上沒有其他字元。 此命令會建立檔案:

    echo 6-24-2021 >"C:\mount\windows\Windows\csup.txt"
    

使用回應檔案自定義 Windows

回應檔案(或自動安裝檔案)可用來在安裝期間修改映像中的 Windows 設定。 您也可以在映像中建立觸發腳本的設定,該映像會在第一個使用者建立其帳戶之後執行,並挑選默認語言。 回應檔案可讓您指定各種安裝選項,包括如何分割磁碟、要安裝的 Windows 映射位置,以及要套用的產品密鑰。 也可以指定套用至 Windows 安裝的值,例如使用者帳戶的名稱、顯示設定和 Internet Explorer 我的最愛。 安裝程式的回應檔案通常稱為 Unattend.xml。

自動檔案包含數個區段,每個區段會在 Windows 安裝程式期間在不同的時間進行處理。 這些階段稱為設定階段。 以下是最常使用的傳遞:

您可以指定要將新設定新增至下列設定的設定階段:

  • 1 - windowsPE:Windows 安裝程式會使用這些設定。 如果您要修改現有的映像,通常可以忽略這些設定。
  • 2 - offlineServicing:當 DISM 用來將自動檔案套用至離線映射時,會在離線伺服器中處理 設定。
  • 4 - 特製化:應該在這裡新增大部分的設定。 這些設定會在稽核模式的開頭和 OOBE 的開頭觸發。 如果您需要進行多個更新或測試設定,請再次將裝置一般化,並在[特製化組態] 階段中新增另一批設定。
  • 6 - auditUser:在您啟動稽核模式時立即執行。 AuditUser 是執行系統測試腳本的好位置。 我們將新增 Microsoft-Windows-Deployment\RunAsynchronousCommand 作為範例。 若要深入瞭解,請參閱將自定義腳本新增至 Windows 安裝程式。
  • 7 - oobeSystem:謹慎使用。 大部分的設定會在使用者完成 OOBE 之後執行。 例外狀況是 Microsoft-Windows-Deployment\Reseal\Mode = Audit 設定,我們將用來略過 OOBE 並將電腦開機進入稽核模式。 如果您的腳本依賴知道使用者在 OOBE 期間選取的語言,您會將其新增至 oobeSystem pass。

雖然您可以在稽核模式中設定許多 Windows 設定,但某些設定只能使用回應檔案或 Windows 設定設計工具來設定,例如新增製造商的支持資訊。 回應檔案設定的完整清單(也稱為自動設定)位於自動安裝 Windows 安裝程序參考

製作回應檔案

使用 Windows 系統映像管理員 (SIM) 來建立和修改自動安裝檔案。 SIM 會安裝為 ADK 的一部分。 請確定您的回應設定包含 OEM 原則檔中所述的必要設定。

在 Windows SIM 中建立類別目錄檔案

類別目錄檔案 (.clg) 是具有適用於特定 Windows 映像之設定相關信息的檔案。 在 SIM 中使用 Windows 映射時,您必須先為正在使用的 Windows WIM 建立類別目錄檔案。

  1. 啟動 Windows 系統映像管理員 (WSIM)。
  2. 按兩下 [檔案 > ] [選取 Windows 映像]。
  3. 在 [選取 Windows 映射] 中,流覽至並選取映射檔 (D:\install.wim)。
  4. 選取 [首頁版本] 按下 [確定]。
  5. 按兩下 [是] 以建立目錄檔案。 Windows SIM 會根據映像檔建立檔案,並將它儲存到與圖像檔相同的資料夾。 這個流程可能需要幾分鐘的時間才會完成。

類別目錄檔案會出現在 [Windows 映射] 窗格中。 Windows SIM 會列出該映像中可設定的元件和套件。

建立回應檔案

如果您未使用現有的自動檔案,您可以在 Windows SIM 中建立新的檔案:

  • 按兩下 [ > 檔案新增回應檔案]

新的回應檔案會出現在右窗格中。

新增回應檔案設定

在本節中,我們將示範如何建立響應檔案,以在部署 Windows 映射時設定設定。

開始之前,請在掛接的 Windows 映射中建立名為 Panther 的資料夾。 Windows 會自動在此資料夾中尋找回應檔案。

md c:\mount\windows\Windows\panther
新增 OEM 資訊 (選擇性)
  1. 在 [Windows 映射] 窗格中,展開 [元件],以滑鼠右鍵按兩下 [amd64_Microsoft-Windows-Shell-Setup_(版本),然後選取 [新增設定至傳遞 4] 特製化。

  2. 在 [回應檔案] 窗格中,選取 [元件\4 特製化\amd64_Microsoft-Windows-Shell-Setup_neutral\OEMInformation]。

  3. 在 [OEMInformation 屬性] 窗格的 [設定] 區段中,設定:

    Manufacturer=Fabrikam
    Model=Notebook Model 1
    Logo=C:\Windows\Fabrikam\Fabrikam.bmp
    
  4. 將回應檔案儲存在 Panther 資料夾中為 c:\temp\lab\AnswerFiles\unattend.xml

接下來,您必須確定您在上面指定的標誌位於 Windows 映射中。

  1. 建立大小上限為 120x120 像素的 32 位色彩影像。 將它儲存為技術人員計算機上的 C:\temp\labAnswerFiles\Fabrikam.bmp 檔案。

  2. 在掛接的 Windows 映射中建立名為 Fabrikam的資料夾。

    mkdir c:\mount\windows\Fabrikam
    
  3. 將Fabrikam.bmp複製到您剛才建立的 Fabrikam 資料夾:

    copy fabrikam.bmp c:\mount\windows\fabrikam
    
將裝置設定為自動開機至稽核模式

使用相同的unattend.xml檔案,將計算機設定為自動 開機進入稽核模式

  1. 在 [Windows 映射] 窗格中,展開 [元件],以滑鼠右鍵按兩下 [amd64_Microsoft-Windows-Deployment_(版本),然後選取 [新增設定] 以 [傳遞 7 oobeSystem]。
  2. 在 [回應檔案] 窗格中,選取 [元件\7 oobeSystem\amd64_Microsoft-Windows-Deployment_neutral\Reseal]。
  3. 在 [重新密封屬性] 窗格中的 [設定] 區段中,選取 Mode=Audit
  4. 將回應檔案儲存在 Panther 資料夾中,作為unattend.xml。

設定 Windows 版本

在本節中,我們會將 Windows OS 版本從家用版升級為專業版。

重要

  • 您無法將 Windows 映像設定為較低版本。
  • 注意:您不應該在已變更為較高版本的映像上使用此程式。
  • 您通常不會脫機切換版本,就像我們會在這裡顯示一樣。 您不會升級版本,而是掛接 Windows Professional wim 以開始使用。 針對指示性用途,此處包含此步驟:只是為了顯示使用 /Set-Edition 命令。
  1. 執行下列命令來判斷可用的版本,以判斷您可以將映像升級至哪些映射:

    Dism /Get-TargetEditions /Image:C:\mount\windows
    

    記下可用的版本識別碼。

  2. 將版本升級至 Professional 版本。

    Dism /Set-Edition:Professional /Image:C:\mount\windows
    

透過復原保留 Windows 設定

在復原案例中,Windows 不會自動儲存透過響應檔案建立的設定、使用 LayoutModification.xml 建立的 Windows 開始功能表自定義,或從 oobe.xml 建立的第一個登入資訊。

若要確定 Windows 會儲存您的自訂專案:

  • 將unattend.xml、LayoutModification.json、TaskbarLayoutModification.xml複本加上 C:\mount\windows\Windows\System32\OOBE 資料夾的複本儲存在 C:\Recovery\AutoApply\ 中。

優化 WinRE (第 1 部分)

  1. 增加 WinRE 映像的臨時空間大小。

    Dism /image:c:\mount\winre /set-scratchspace:512
    
  2. 清除未使用的檔案,並減少 winre.wim 的大小

    dism /image:"c:\mount\winre" /Cleanup-Image /StartComponentCleanup
    

卸載映像

  1. 關閉可能從映像存取檔案的所有應用程式,包括檔案總管。

  2. 認可變更並卸載 Windows RE 映像:

    Dism /Unmount-Image /MountDir:"C:\mount\winre" /Commit
    

    其中 C 是包含映像之磁碟驅動器的驅動器號。

    此程序可能需要幾分鐘的時間。

  3. 建立更新之 Windows RE 映射的備份複本,並將舊的 WinRE 映射取代為新導出的映射:

    dism /export-image /sourceimagefile:c:\mount\windows\windows\system32\recovery\winre.wim /sourceindex:1 /DestinationImageFile:c:\temp\lab\winre_bak.wim
    Del c:\mount\windows\windows\system32\recovery\winre.wim
    Copy c:\temp\lab\winre_bak.wim c:\mount\windows\windows\system32\recovery\winre.wim
    

    如果出現提示,請指定 F 檔案

    疑難解答:如果您在指定的目錄下看不到 winre.wim,請使用下列命令來設定可見的檔案:

    attrib -h -a -s C:\mount\windows\Windows\System32\Recovery\winre.wim
    
  4. 檢查 Windows RE 映射的新大小:

    Dir "C:\mount\windows\Windows\System32\Recovery\winre.wim"
    
  5. 根據新 winre.wim 的大小,調整部署腳本中的分割區大小,使其包含足夠的 winre.wim 空間,以及一些額外的可用空間。

    遵循下列分割區配置大小圖表,以判斷 createpartitions-firmware-imageformat<><> 中復原分割區的大小.txt檔案。 剩餘的可用空間量是在您將 winre.wim 複製到隱藏的數據分割之後。 如需詳細資訊,請參閱下列磁碟分區規則。

    數據分割大小 可用空間
    小於 500 MB 最低 50 MB 免費
    450 MB - 680 MB 最低 320 MB 免費
    超過 680 MB 1024 MB 免費

    createpartitions diskpart 腳本中復原磁碟分區大小的範例:

    rem == 3. Windows RE tools partition ===============
    create partition primary size=465
    
  6. 使用 WinRE 映射的方式將 Windows 映射優化:

    Dism /Image:c:\mount\windows /Cleanup-Image /StartComponentCleanup
    
  7. 認可變更並卸載 Windows 映像:

    Dism /Unmount-Image /MountDir:"C:\mount\windows" /Commit
    

    其中 C 是包含映像之磁碟機的磁碟機代號。 此程序可能需要幾分鐘的時間。

  8. 匯出映像以完成影像優化。 在導出程式期間,DISM 會移除已取代的檔案,而映像的檔案大小將會降低。 將 Windows 映射匯出至新的映像檔:

    Dism /Export-Image /SourceImageFile:"C:\temp\lab\Images\basicimage.wim" /SourceIndex:1 /DestinationImageFile:"C:\temp\lab\Images\install.wim"
    

您現在有可部署到其他電腦的自定義 Windows 映像。 在下一節中,我們將示範如何將映射部署至參照計算機、進行在線變更,然後完成 Windows 映射,使其準備好進行最終部署。

將映像部署至新的電腦

在本節中,我們將將映射部署至計算機,以便在稽核模式中加以自定義。 開始本節之前:

  • 將自定義映像複製到 USB 磁碟驅動器上的 NTFS 磁碟分區

    copy c:\temp\lab\images\install.wim e:\images
    copy c:\temp\lab\images\winre_bak.wim e:\images
    
  • 請確定 範例腳本 位於 USB 磁碟驅動器上的 [部署] 資料夾中。

開機進入 WinPE

如果您尚未在部署映像的裝置上開機進入 WinPE,請開機進入 WinPE:

  1. 使用 連線 USB 金鑰WinPE 磁碟分區會開機參照電腦。
  2. 如果您使用兩個不同的 USB 磁碟驅動器,在 WinPE 開機之後,請連接具有映像和部署腳本的 USB 磁碟驅動器。
  3. 在 X:\Windows\system32> 命令行上,輸入 diskpart 並按 Enter。
  4. 在 \DISKPART> 命令列輸入 list volume
  5. 在 [卷標] 數據行中,記下 “Ltr” 數據行底下磁碟區的字母。 這是 USB 金鑰的驅動器號。 (範例 E)
  6. 輸入 exit 以結束 Diskpart

使用部署腳本來套用映像

執行腳本來建立分割區並套用您的映像。 我們將使用 USBDrive\deployment 中的applyimage.bat來為我們執行這項操作。

ApplyImage.bat會使用 diskpart 腳本來建立分割區並定義分割區配置。 這個腳本及其呼叫的下標必須放在相同的子資料夾中。 您可以更新這些文稿,以視需要變更分割區大小。

注意

如果您要擷取並部署最終映像作為FFU,請選擇未設定復原的選項。 這可讓您在套用 FFU 之後,視需要擴充 Windows 磁碟分區。 您可以在展開 Windows 磁碟分區之後設定復原。

  1. 執行applyimage.bat並指定要套用的映像:

    D:
    cd Deployment
    ApplyImage.bat D:\Images\install.wim
    

    其中 D:是 USB 儲存體 磁碟驅動器上腳本和映射的驅動器號。

    當文稿提示時:

    1. 選擇是否要設定復原分割區

      • Y:設定 Windows 復原磁碟分區
      • N:未設定復原分割區。 稍後可以設定復原分割區。 如果您要擷取和部署映像作為FFU,請選擇此選項。
    2. Y 以格式化磁碟驅動器

    3. 選擇 N 不要部署為 Compact OS。

    4. 按下 N 以指出影像不包含擴充屬性 (EA)

      注意

      只有在以快閃磁碟驅動器為基礎的裝置上使用精簡OS,因為精簡OS效能會高度相依於儲存設備功能。 不建議在旋轉裝置上使用精簡操作系統。 如需詳細資訊,請參閱 Compact OS。

  2. 拿掉 USB 磁碟驅動器,並重新啟動參照電腦。

    exit
    

    計算機應該根據我們稍早建立的自動檔案設定,開機進入 Windows 稽核模式。 如果您未使用將電腦設定為開機到稽核模式的unattend.xml檔案,您可以在 OOBE 期間按下 Ctrl+Shift+F3 ,以開機進入稽核模式。

進行線上自訂 (稽核模式)

設定您的TaskbarLayoutModification.xml位置

  • 新增下列登錄機碼,以定義您稍早建立之TaskbarLayoutModification.xml檔案的位置:

    cmd /c reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ /v LayoutXMLPath /d C:\Windows\OEM\TaskbarLayoutModification.xml

其他自定義專案

您可以使用稽核模式,使用熟悉的 Windows 環境來自定義 Windows。 在稽核模式中,您可以新增 Windows 傳統型應用程式、變更系統設定、新增數據,以及執行腳本。

若要確定您的稽核模式變更包含在復原映像中,您必須使用 ScanState 將這些變更擷取到布建套件中。 如果發生問題,系統復原工具會使用此套件來還原變更。 您可以選擇性地從壓縮的復原檔案執行應用程式來節省磁碟驅動器空間;這稱為單一實例。

如果您想要擷取映像中的變更,並將其套用至其他裝置,則必須使用 Sysprep 將映像一般化。

在稽核模式中確認自定義專案

我們不建議您在製造期間將您的計算機連線到因特網,也不建議您在稽核模式中從 Windows Update 進行更新,因為它在 sysprep 期間可能會產生錯誤。

  1. 安裝程式完成之後,計算機就會以 管理員 istrator 自動登入 Windows,以稽核模式登入 Windows。
  2. 確認回應檔案中的變更(請參閱製造商名稱、支持電話號碼和其他自定義專案)。

確認版本

稍早在實驗室中,我們已將版本從 Windows 家用版升級為 Windows Professional。 確認此變更:

  1. 以系統管理員身分開啟命令提示字元

  2. 請執行:

    dism /online /get-current-edition
    
  3. 請確定它是正確的版本。 其看起來應該如下:

    Current edition is:
    
    Current Edition : Professional
    
    The operation completed successfully.
    

應用程式和市集商機

透過 Windows 和 Microsoft Store,您擁有品牌和裝置差異、營收創造和客戶存取的巨大機會。

Microsoft Store 應用程式位於 Windows 體驗的中心。 身為 OEM,您可以藉由提供一組絕佳的增值軟體和服務,以及您所建置的高品質硬體,來提供吸引人的客戶體驗並提升品牌忠誠度。

重要

下列金鑰必須在稽核模式中設定。

您必須變更登錄設定,才能新增 OEM 識別符。 如果您是 OEM Microsoft Store 計劃參與者,請連絡 reportapp@microsoft.com 以取得 OEM 識別符。

項目 登錄中的位置
OEMID HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Store, (REG_SZ) OEMID
SCM 識別碼 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Store、 (REG_SZ) StoreContentModifier

OEMID

  1. 從命令提示字元執行regedit.exe
  2. 流覽至 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Store
  3. 以滑鼠右鍵按兩下 [Defalut] 底下 -> 按兩下 [新增]
  4. 點選 [字串值]
  5. 輸入 OEMID
  6. 按兩下 [OEMID],然後在 [值數據:文字] 字段中輸入 OEM 名稱

SCMID

  1. 從命令提示字元執行regedit.exe
  2. 流覽至 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Store
  3. 以滑鼠右鍵按兩下 [Defalut] 底下 -> 按兩下 [新增]
  4. 點選 [字串值]
  5. 類型 StoreContentModifier
  6. 按兩下 [StoreContentModifier],然後在 [值數據: 文字] 欄位中輸入 OEM 名稱

重要

OEMID 登錄機碼不會在按鈕重設期間自動還原。 請參閱本指南的下一節,以瞭解如何在 PBR 作業期間還原 OEMID 登錄機碼。

準備您的映像以進行按鈕重設

本節提供設定按鈕重設 (PBR) 案例之復原環境的指引。

如需詳細資訊,請參閱一鍵重設和 Windows 修復環境 (Windows RE) 和硬碟和磁碟分區。

按鈕重設是內建的復原工具,可讓用戶復原OS,同時保留其數據和重要的自定義專案,而不需要事先備份其數據。 藉由為使用者提供更多復原選項,以及能夠放心地修正自己的計算機,藉此減少自定義復原應用程式的需求。

準備 ScanState

若要開始使用按鈕重設,您必須將 ScanState 複製到 USB 磁碟驅動器。

使用 scanstate 擷取映像上的傳統 Windows 應用程式和設定。

注意:您將使用技術人員計算機來準備 ScanState。

  1. 在技術人員計算機上插入 USBDrive

  2. 以系統管理員身分開啟部署和映像處理工具命令提示字元

  3. 執行 copydandi.cmd,將必要的檔案 複製到 USBDrive\scanstate:

    Copydandi.cmd amd64 e:\scanstate
    

    其中 E: 是 USBDrive 的字母。

建立 Scanstate 移轉檔案

在本節中,您將建立組態檔,以在按鈕重設期間還原檔案和登錄機碼。

建立移轉 XML 檔案,用來還原在製造程式期間手動輸入的登錄值。 下列範例會還原本檔中稍早設定的 OEMID 登錄值。

  1. 開啟記事本

  2. 將下列 xml 複製並貼到 記事本。 這會告訴 ScanState 移轉 OEMID 登錄機碼:

    <migration urlid="https://www.microsoft.com/migration/1.0/migxmlext/test">
         <component type="System" context="UserAndSystem">
              <displayName>OEMID</displayName>
            <role role="Settings">
                <rules>
                    <include>
                        <objectSet>
                            <pattern type="Registry">HKLM\Software\Microsoft\Windows\CurrentVersion\Store [OEMID]</pattern>
                        </objectSet>
                    </include>
                </rules>
            </role>
        </component>
    </migration>
    
  3. 將檔案儲存為regerecover.xml。

使用 Scanstate 建立復原套件

重要

若要讓按鈕重設正常運作,套件必須是儲存在 C:\Recovery\Customizations 中的 .ppkg 檔案。

在您的參考電腦上:

使用 ScanState 將已安裝的自定義專案擷取到布建套件,然後將它儲存至 c:\Recovery\customizations。

  1. 在 OS 磁碟驅動器的根目錄建立 Recovery 資料夾:

    mkdir C:\Recovery
    icacls C:\Recovery /inheritance:r
    icacls C:\Recovery /grant:r SYSTEM:(OI)(CI)(F)
    icacls C:\Recovery /grant:r *S-1-5-32-544:(OI)(CI)(F)
    takeown /f C:\Recovery /a
    attrib +H C:\Recovery
    
  2. 執行 ScanState 以收集應用程式和自訂專案:

    mkdir c:\recovery\customizations
    E:\ScanState\scanstate.exe /apps /ppkg C:\Recovery\Customizations\apps.ppkg /i:c:\recovery\oem\regrecover.xml /config:E:\scanstate\Config_AppsAndSettings.xml /o /c /v:13 /l:C:\ScanState.log
    

    其中 E:是 USB 磁碟驅動器的驅動器號。

  3. 當 ScanState 成功完成時,請刪除scanstate.log和miglog.xml檔案:

    del c:\scanstate.log
    del c:\miglog.xml
    

使用自動套用資料夾還原其他設定

Windows 復原將會檢查 C:\Recovery\AutoApply 並自動還原一般設定,包括 OOBE、自動安裝及任務列設定設定,這些設定包含在該資料夾中。

請確定您unattend.xml、LayoutModification.json、TaskbarLayoutModification.xml和 OOBE 資料夾的複本位於 C:\Recovery\AutoApply\ 中,如此 PBR 期間就會自動套用這些檔案。

複製 winre.wim 備份

在部署 winre.wim 檔案期間移動。 在擷取最終映像之前,必須複製我們建立的備份 winre.wim,否則復原環境將無法在最終映像部署中運作。

Copy e:\images\winre_bak.wim c:\windows\system32\recovery\winre.wim

重新密封映像

在本節中,我們將使用sysprep.exe來重新密封映像,並準備好進行工廠部署。

  1. 刪除已預先載入之應用程式的安裝資料夾和檔案。 這些資料夾可以增加擷取的 .wim 檔案大小。
  2. 如果 SysPrep 工具已開啟,請將其關閉,並在 管理員 istrator 模式中開啟命令提示字元。
  3. 使用回應檔案搭配其他設定將影像一般化:
C:\Windows\System32\Sysprep\sysprep /oobe /generalize /unattend:c:\recovery\oem\Unattend.xml /shutdown

完成並擷取您的映像

我們將示範如何完成並擷取大規模部署的處理站映射。 若要啟動本節,請在上一節中執行 sysprep 之後,確定您的參照計算機已關閉。

  1. 將參照電腦開機到 WinPE。
  2. WinPE 開機後,請連接 USB 磁碟驅動器。

疑難排解

  • 如果參照計算機從其內部 HDD 開機,Windows 會輸入特製化和 OOBE 通過。 如果任何組態通過完成,您將無法擷取穩定且一般化的映像。 如果其中一個傳球已完成,您必須再次將影像一般化。 您可以在稽核模式<中執行 (Ctrl>+<Shift>+<F3> 在 OOBE 期間)。 在 [稽核] 模式中,執行上述的 Sysprep 命令。 確定計算機在下一次重新啟動時開機至 WinPE。

  • 如果系統仍開機至內部 HDD,請檢查電腦的開機優先順序。 請確定 USB 的開機優先順序高於內部硬碟。

  • 使用 diskpart 識別 Windows 磁碟分區驅動器號。

    1. 在 X:\windows\system32> 提示字元中,輸入 diskpart,然後按 Enter 鍵以啟動 Diskpart。

    2. 在 \DISKPART> 提示字元中,輸入 list volume

    3. 在 [卷標] 數據行底下,找出標示為 “Windows” 的磁碟區。

    4. 請注意在 「Ltr」 資料行下指派的字母 (範例:C)。 這是 USB 金鑰的驅動器號。

    C:\WINDOWS\system32>diskpart
    
    Microsoft DiskPart version 10.0.22000.1
    
    Copyright (C) Microsoft Corporation.
    
    On computer: Windows
    
    DISKPART> list volume
    
    Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
    ----------  ---  -----------  -----  ----------  -------  ---------  --------
    Volume 0         System       NTFS   Partition    100 MB  Healthy    System
    Volume 1     C   Windows      NTFS   Partition    465 GB  Healthy    Boot
    Volume 2         Recovery     NTFS   Partition    500 MB  Healthy    Hidden
    Volume 3     D                       Removable         B  No Media
    
    5. Type exit to quit Diskpart.
    
    

(僅限 CompactOS)轉換已安裝的自定義專案

本節說明如何減少 ScanState 套件的大小。

重要

只有當您部署至具有有限記憶體的裝置時,才執行此步驟。 單一實例會影響某些傳統型應用程式的啟動效能。

如需詳細資訊,請參閱 Compact OS

若要減少 ScanState 復原套件的大小,請在參考裝置上從 WinPE 執行下列命令:

DISM /Apply-CustomDataImage /CustomDataImage:C:\Recovery\Customizations\apps.ppkg /ImagePath:C:\ /SingleInstance

擷取您的映像

在本節中,我們將告訴您如何擷取 sysprepped 映射。 您可以擷取 WIMFFU

擷取 WIM

在您的參考電腦上:

  1. 識別 Windows 磁碟分區驅動器號。

    1. 在 X:\windows\system32> 提示字元中,輸入 diskpart,然後按 Enter 鍵以啟動 Diskpart。

    2. 在 \DISKPART> 提示字元類型清單磁碟區

    3. 在 [卷標] 數據行底下,找出標示為 “Windows” 的磁碟區

    4. 請注意在 「Ltr」 資料行下指派的字母 (範例:C)。 這是需要使用的驅動器號

    5. 輸入 exit 以結束 Diskpart

  2. 將 Windows 磁碟分區的映像擷取到 USB 磁碟驅動器。 這個程序需要幾分鐘的時間。

    注意:建議您在執行 DISM 時使用快取目錄。 在此步驟中,我們會在暫存盤的USB磁碟驅動器密鑰上建立 scratchdir,但您可以選擇任何具有臨時目錄可用空間的硬碟。

    MD e:\scratchdir
    Dism /Capture-Image /CaptureDir:C:\ /ImageFile:E:\Images\CustomImage.wim /Name:"CustomImage" /scratchdir:e:\scratchdir /EA
    

    這會將名為 CustomImage.wim 的映射擷取至 E:\Images。 映射擷取完成時,您可以關閉參照計算機。

擷取映射后,您可以跳到 驗證最終映射

擷取 FFU

在您的參考電腦上:

  1. 識別 Windows 磁碟分區驅動器號。

    1. 在 X:\windows\system32> 提示字元中,輸入 diskpart,然後按 Enter 鍵以啟動 Diskpart。

    2. 在 \DISKPART> 提示字元輸入清單磁碟

    3. 在 [磁碟 ###] 數據行底下,識別具有 Windows 安裝的磁碟,並記下指派的磁碟編號。 這看起來會像 磁碟 0

    4. 輸入 exit 以結束 Diskpart

  2. 將 Windows 磁碟的映像擷取到 USB 磁碟驅動器。 這個程序需要幾分鐘的時間。

    DISM.exe /capture-ffu /imagefile=E:\Images\CustomImage.wim /Name:"CustomImage" /capturedrive=\\.\PhysicalDrive0 /description:"Windows FFU"
    

    這會將名為 CustomImage.wim 的映射擷取至 E:\Images。 映射擷取完成時,您可以關閉參照計算機。

確認您的最終映像

在本節中,我們將討論如何部署擷取的映射,以進行測試和驗證。

將您的映像部署至參考裝置

  1. 將您想要測試映像的電腦開機到 WinPE。

  2. 執行 applyimage.bat 來部署映像。

    如果您擷取名為 customimage.wim 的 WIM:

    E:\Deployment\applyimage.bat E:\Images\customimage.wim
    

    當腳本詢問您的映像是否使用擴充屬性時,請回答 Y ,因為您稍早擷取的影像指定 /EA 了 選項。

    or

    如果您擷取名為 CustomImage.FFU 的 FFU:

    E:\Deployment\applyimage.bat E:\Images\CustomImage.FFU
    
  3. 請遵循文稿的提示來套用映像。

  4. 輸入 exit 以關閉 WinPE 並重新啟動電腦。

驗證設定

您的計算機會第一次重新啟動並開機進入 Windows。

  1. 在 OOBE 中,建立稍後將刪除的虛擬使用者。

  2. 確認映像中仍有任何應用程式和離線自定義,並正常運作。

    要檢查的一些事項如下:

    • 工作列
    • 釘選的應用程式
    • 桌面桌布設定為顯示正確的影像
    • OEM 資訊正確顯示
    • 已設定 OEM 應用程式識別元登錄機碼
    • 默認主題是您選擇的主題
    • 市集應用程式正常啟動
    • 傳統型應用程式啟動正常
    • 透過 SPP 套用的桌面應用程式啟動正常
    • 如果您已啟用 S 模式,請確定已移除製造登錄機碼

驗證復原

  1. 確認您的自定義項目在復原后已還原,並執行 [保留我的檔案] 和 [從下列進入點移除所有功能] 繼續運作:

    • 設定 。 從 [開始] 功能表中,按兩下 [設定 b]。 在 設定 應用程式中,按兩下 [更新與安全性],然後按兩下 [復原]。 c. 按兩下 [重設這部計算機] 底下的 [開始使用] 按鈕,並遵循畫面上的指示。

    • Windows RE a。 在 Windows RE 的 [選擇選項] 畫面中,按兩下 [疑難解答 b]。 按兩下 [重設這部計算機],然後依照畫面上的指示操作

  2. 確認可以建立復原媒體,並執行裸機復原功能來驗證其功能:a。 啟動 從 控制台 b 建立復原磁碟驅動器。 請遵循螢幕上的指示來建立USB修復磁碟驅動器 c。 從 USB 修復磁碟驅動器啟動電腦 d。 從 [選擇選項] 畫面中,按兩下 [疑難解答 e]。 按兩下 [從磁碟驅動器復原],然後遵循畫面上的指示

優化最終映像

此時,您有一個幾乎準備好進行部署的 Windows 映射。 在本節中,我們將說明如何對映射進行最後的觸控,以便您準備好進行部署。

  • 藉由匯出映像的複本,從您的映像中移除未使用的套件。

    Dism /export-image /sourceimagefile:E:\images\customimage.wim /sourceindex:1 /destinationimagefile:e:\images\MasterImage_Pro.wim
    

最終出貨

您必須至少將電腦開機一次,才能讓 Windows 安裝程式的特製設定通過完成,再寄送電腦。

特製化設定階段會將硬體特定資訊新增至計算機,並在 Windows OOBE 出現時完成。

如需詳細資訊,請參閱 OEM 原則檔。

減少磁碟使用量

在整個本指南中,我們已示範幾個地方可讓您減少磁碟使用量:

  • 使用 Dism /export-image
  • 使用 Compact OS
  • 搭配單一實例使用 Compact OS

本節說明更多方法,您可以取得額外的可用空間。

減少和關閉Hiberfile

在部署的OS上,減少和關閉休眠檔案可以傳回400 MB到1.5GB OS空間。

將 Hiberfile 減少 30%

當您使用 unattend.xml 執行sysprep.exe時,可以新增 FirstLogonCommand 來減少休眠檔案:

<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-Shell-Setup">
            <FirstLogonCommands>
                <SynchronousCommand wcm:action="add">
                    <CommandLine>powercfg /h /type reduced</CommandLine>
                    <Description>Reduce hiberfile size</Description>
                    <Order>1</Order>
                    <RequiresUserInput>false</RequiresUserInput>
                </SynchronousCommand>
            </FirstLogonCommands>
        </component>
    </settings>
</unattend>

關閉Hiberfile

當您使用 unattend.xml 執行sysprep.exe時,可以新增 FirstLogonCommand 來關閉休眠檔案:

<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-Shell-Setup">
            <FirstLogonCommands>
                <SynchronousCommand wcm:action="add">
                    <CommandLine>powercfg /h /type Off</CommandLine>
                    <Description>Reduce hiberfile size</Description>
                    <Order>1</Order>
                    <RequiresUserInput>false</RequiresUserInput>
                </SynchronousCommand>
            </FirstLogonCommands>
        </component>
    </settings>
</unattend>

使用包含這些設定的unattend.xml檔案擷取您的映像。