共用方式為


就地升級建議

適用於:Configuration Manager (目前的分支)

Windows 就地升級的預設工作順序範本包含群組,其中包含在升級程式前後新增的建議動作。 這些動作在許多在裝置上成功升級 Windows 的客戶之間很常見。 本文提供升級程式不同階段中這些建議步驟的相關資訊。

準備升級

如果您現有的工作順序尚未有這些動作,請手動將它們新增至 [ 準備升級 ] 群組中的工作順序。

電池檢查

在此群組中新增步驟,以檢查電腦是否使用電池或有線電源。 此動作需要自訂腳本或公用程式來執行此檢查。

電池檢查範例

使用 WbemTest 並聯機到 root\cimv2 命名空間。 然後執行下列查詢:

Select BatteryStatus From Win32_Battery where BatteryStatus != 2

如果傳回任何結果,則裝置會以電池執行。 否則,裝置會連線到有線電源。

網路/有線連線檢查

在此群組中新增步驟,以檢查電腦是否已連線到網路,且未使用無線連線。 此動作需要自訂腳本或公用程式來執行此檢查。

網路檢查範例

使用 WbemTest 並聯機到 root\cimv2 命名空間。 然後執行下列查詢:

Select * From Win32_NetworkAdapter Where NetConnectionStatus = 2 and PhysicalAdapter = 'True' and NetConnectionID = 'Wi-Fi'

如果傳回任何結果,則裝置會在 Wi-Fi 上執行。 否則,裝置會連線到有線網路連線。

移除不相容的應用程式

在此群組中新增步驟,以移除與目標 Windows 版本不相容的任何應用程式。 卸載應用程式的方法會有所不同。

如果應用程式使用 Windows Installer,請從應用程式之 Windows Installer 部署類型屬性的 [程式] 索引標籤複製 [卸載程式] 命令列。 然後使用卸載程式 命令列 ,在此群組中新增執行命令列步驟。 例如:

msiexec /x {150031D8-1234-4BA8-9F52-D6E5190D1CBA} /q

移除不相容的驅動程式

在此群組中新增步驟,以移除與目標 Windows 版本不相容的任何驅動程式。

移除/暫停協力廠商安全性

在此群組中新增步驟,以移除或暫停協力廠商安全性程式,例如防毒軟體。

如果您使用協力廠商磁片加密程式,請使用命令列選項將其加密驅動程式提供給 Windows 安裝 /ReflectDrivers 程式。 將 [設定工作順序變數 ] 步驟新增至此群組中的工作順序。 將工作順序變數設定為 OSDSetupAdditionalUpgradeOptions。 使用驅動程式的路徑,將值 /ReflectDrivers 設定為 。 此 工作順序變數 會附加工作順序所使用的 Windows 安裝程式命令列。 如需此程式的任何進一步指引,請連絡您的軟體廠商。

下載套件內容工作順序步驟

在下列案例中,使用升級作業系統步驟之前的下載套件內容步驟:

  • 您可以針對 x86 和 x64 平臺使用單一升級工作順序。 在[準備升級] 群組中包含兩個[下載套件內容] 步驟。 設定每個步驟的條件以偵測用戶端架構。 此條件會導致步驟只下載適當的 OS 升級套件。 將每個 [下載套件內容 ] 步驟設定為使用相同的變數,並在 升級作業系統 步驟的媒體路徑中使用 變數。

  • 若要動態下載適用的驅動程式套件,請使用兩個 下載套件內容 步驟與條件來偵測每個驅動程式套件的適當硬體類型。 將每個 下載套件內容 步驟設定為使用相同的變數。 然後將該變數用於升級作業系統步驟上驅動程式區段中的分段內容值。

    注意事項

    Configuration Manager將數值尾碼新增至這個變數名稱。 例如,如果您指定 %mycontent% 為自訂變數,用戶端會將所有參考的內容儲存在此位置。 當您在後續步驟中參考變數時,例如 升級作業系統,請使用具有數值尾碼的變數。 在此範例中, %mycontent01%%mycontent02% ,其中的數位會對應至 下載套件內容 步驟列出此特定內容的順序。

後置處理

建立工作順序之後,請在工作順序的 後置處理 群組中新增更多步驟。

注意事項

此工作順序不是線性。 有一些步驟可能會影響工作順序結果的條件。 此行為取決於是否成功升級用戶端電腦,或是否必須將用戶端電腦復原至原始 OS。

Windows 就地升級的預設工作順序範本包含其他群組,其中包含在升級程式之後要新增的建議動作。 這些在 後續處理 群組中的動作,在許多成功升級裝置上 Windows 的客戶中很常見。 如果您現有的工作順序尚未有這些動作,請手動將它們新增至後續 處理 群組中的工作順序。

套用安裝程式型驅動程式

在此群組中新增步驟,以從套件安裝以安裝程式為基礎的驅動程式 (.exe) 。

安裝/啟用協力廠商安全性

在此群組中新增步驟,以安裝或啟用協力廠商安全性程式,例如防毒軟體。

設定 Windows 預設應用程式和關聯

在此群組中新增步驟,以設定 Windows 預設應用程式和檔案關聯。

  1. 使用您想要的應用程式關聯來準備參照電腦。

  2. 執行下列命令列以匯出:

    dism /online /Export-DefaultAppAssociations:"%UserProfile%\Desktop\DefaultAppAssociations.xml"

  3. 將 XML 檔案新增至封裝。

  4. 在此群組中新增執行 命令列 步驟。 指定包含 XML 檔案的封裝,然後指定下列命令列:

    dism /online /Import-DefaultAppAssociations:DefaultAppAssociations.xml

如需詳細資訊,請參閱 匯出或匯入預設應用程式關聯

套用自訂和個人化

在此群組中新增步驟以套用 [開始] 功能表自訂,例如組織程式群組。 如需詳細資訊,請參閱 自訂 \[開始\] 配置

回 滾

當電腦重新開機後升級程式發生問題時,Windows 安裝程式會將系統復原到先前的作業系統。 工作順序接著會繼續複 群組中的任何步驟。 建立工作順序之後,請視需要在此群組中新增選擇性步驟。 例如,反轉準備升級群組中對系統所做的任何變更,例如卸載不相容的軟體。

失敗時執行動作

Windows 就地升級的預設工作順序範本包含在 失敗時執行動作的群組。 此群組包含建議的動作,以在升級程式失敗時新增。 這些動作可讓您更輕鬆地進行疑難排解。

收集記錄

若要從用戶端收集記錄,請在此群組中新增步驟。

執行診斷工具

若要執行診斷工具,請在此群組中新增步驟。 自動執行這些工具,以便在失敗後立即從系統收集其他資訊。

其中一個這類工具是 Windows SetupDiag。 這是獨立的診斷工具,可取得 Windows 升級失敗原因的詳細資料。

  • 在Configuration Manager中,建立工具的件。

  • 將執行 命令列 步驟新增至工作順序的這個群組。 使用 [封裝 ] 選項來參考工具。 下列字串是 命令列範例: SetupDiag.exe /Output:"%_SMSTSLogPath%\SetupDiagResults.log"

提示

請一律使用最新版本的 SetupDiag 來取得最新功能,並修正已知問題。 如需詳細資訊,請 參閱 SetupDiag

其他建議

Windows 檔

檢閱 Windows 檔以 解決 Windows 用戶端升級錯誤。 本文也包含升級程式的詳細資訊。

檢查磁碟空間下限

在預設 的 [檢查整備程度 ] 步驟中,啟用 [確保可用磁碟空間下限 (MB) 。 將 32 位 OS 升級套件的值設定為至少 16384 (16 GB) ,或 64 位的 20480 (20 GB) 。

重試下載原則

使用 SMSTSDownloadRetryCount工作順序變數 來重試下載原則。 用戶端目前預設會重試兩次;此變數設定為兩個 (2) 。 如果您的用戶端不在有線內部網路連線,則更多重試可協助用戶端取得原則。 如果無法下載原則,則使用此變數不會造成任何負面的副作用,除了延遲失敗之外。 也請將 SMSTSDownloadRetryDelay 變數從預設的 15 秒增加。

執行內嵌相容性評估

  1. 在 [準備升級] 群組中,提早新增第二個升級作業系統步驟。

    1. 將其命名 為升級評估

    2. 指定相同的升級套件,然後啟用 [ 執行 Windows 安裝程式相容性掃描而不啟動升級]選項。

    3. 在 [選項] 索引標籤 上發生錯誤 時啟用 [繼續]。

  2. 緊接在此 升級評估 步驟之後,新增執行 命令列 步驟。 指定下列命令列:

    cmd /c exit %_SMSTSOSUpgradeActionReturnCode%

    此命令會讓命令提示字元結束指定的非零結束代碼,而工作順序會將該代碼視為失敗。

  3. 在 [ 選項] 索引 標籤上,新增下列條件:

    Task Sequence Variable _SMSTSOSUpgradeActionReturnCode not equals 3247440400

    此條件表示只有在傳回碼不是成功程式碼時,工作順序才會執行此執行 命令列 步驟。

傳回碼 3247440400 相當於MOSETUP_E_COMPAT_SCANONLY (0xC1900210) ,這是成功的相容性掃描,沒有任何問題。 如果 升級評估 步驟成功並傳回 3247440400 ,工作順序會略過此執行 命令列 步驟,並繼續進行。 如果評定步驟傳回任何其他傳回碼,則會執行此 執行命令列 步驟。 由於命令會以非零傳回碼結束,因此工作順序也會失敗。 工作順序記錄和狀態訊息包含來自 Windows 安裝程式相容性掃描的傳回碼。 如需 _SMSTSOSUpgradeActionReturnCode的詳細資訊,請參閱 工作順序變數

如需詳細資訊,請參閱 升級作業系統 工作順序步驟。

從 BIOS 轉換成 UEFI

如果您想要在此工作順序期間將裝置從 BIOS 變更為 UEFI,請參閱 在就地升級期間從 BIOS 轉換為 UEFI

管理 BitLocker

如果您使用 BitLocker 磁片加密,則 Windows 安裝程式預設會在升級期間自動暫停它。 Windows 安裝程式包含 /BitLocker 命令列參數來控制此行為。 如果您的安全性需求需要裝置一律有作用中的磁片加密,請使用準備升級群組中的OSDSetupAdditionalUpgradeOptions工作順序變數來包含 /BitLocker TryKeepActive 。 如需詳細資訊,請參閱 Windows 安裝程式命令列選項

移除預設應用程式

有些客戶會在 Windows 中移除預設布建的應用程式。 例如,Bing 天氣應用程式或Microsoft Solitaire 集合。 在某些情況下,這些應用程式會在升級 Windows 之後返回。 如需詳細資訊,請 參閱如何防止從 Windows 用戶端移除的應用程式在更新期間傳回

將執行 命令列 步驟新增至 [準備升級 ] 群組中的工作順序。 指定類似下列範例的命令列:

cmd /c reg add "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\Deprovisioned\Microsoft.BingWeather_8wekyb3d8bbwe" /f

後續步驟

如需詳細資訊,請參閱下列文章: