Windows 10 升級錯誤碼
適用於: Windows 10
如果升級程式不成功,Windows 安裝程式會傳回兩個程式代碼:
- 結果碼:結果碼會對應至特定的 Win32 或 NTSTATUS 錯誤。
- 擴充程式代碼:擴充程式代碼包含發生錯誤的階段,以及錯誤發生時所執行作業的相關信息。
例如,擴展碼為 0x4000D 的 0xC1900101 結果碼會傳回為:0xC1900101 - 0x4000D。
注意事項
如果只傳回結果碼,這可能是因為正在使用無法擷取擴充程式代碼的工具。 例如,如果您使用 Windows 10 升級小幫手,則可能只會傳回結果碼。
提示
如果您找不到結果並擴充錯誤碼,可以嘗試使用 事件檢視器 來尋找這些程式代碼。 如需詳細資訊,請參閱 Windows 錯誤報告。
結果碼
0xC1900101的結果碼是泛型的,表示發生復原。 在大部分情況下,原因是驅動程式相容性問題。 若要針對傳回0xC1900101結果碼的失敗升級進行疑難解答,請分析擴充程式代碼以判斷 Windows 安裝程式階段,並參閱本文稍後的 解決程式 一節。
下列一組結果碼與 Windows 安裝 程式相容性警告相關聯:
結果碼 | 郵件 | 描述 |
---|---|---|
0xC1900210 | MOSETUP_E_COMPAT_SCANONLY | 安裝程式找不到任何相容性問題 |
0xC1900208 | MOSETUP_E_COMPAT_INSTALLREQ_BLOCK | 安裝程式發現可採取動作的相容性問題,例如應用程式不相容 |
0xC1900204 | MOSETUP_E_COMPAT_MIGCHOICE_BLOCK | 選取的移轉選項無法 (例如:企業對家) |
0xC1900200 | MOSETUP_E_COMPAT_SYSREQ_BLOCK | 計算機不符合 Windows 10 |
0xC190020E | MOSETUP_E_INSTALLDISKSPACE_BLOCK | 計算機沒有足夠的可用空間可安裝 |
本文的解決 程式 一節提供新式設定 (設定) 範圍中描述的錯誤清單。
其他結果碼可以與所發生的特定錯誤類型進行比對。 若要比對結果碼與錯誤:
使用第一個十六進位數位,將錯誤碼類型識別為 Win32 或 NTSTATUS:
8 = Win32 錯誤碼 (例如:0x80070070)
C = NTSTATUS 值 (例如:0xC1900107)記下錯誤碼的最後四個數位, (例如:0x80070070 = 0070) 。 這些數位是 HRESULT 或 NTSTATUS 結構中定義的實際錯誤碼類型。 程序代碼中的其他數位會識別產生錯誤的裝置類型等專案。
根據 Win32 或 NTSTATUS () 第一個步驟中所決定的錯誤碼類型,使用下列連結,將衍生自第二個步驟的四位數與 Win32 錯誤碼或 NTSTATUS 值相符:
範例:
- 0x80070070
- 根據 「8」,這是 Win32 錯誤碼。
- 最後四個數位是 0070,因此請查閱 Win32 錯誤碼 數據表中的0x00000070。
- 錯誤為:
ERROR_DISK_FULL
- 0xC1900107
- 根據 「C」,這是 NTSTATUS 錯誤碼。
- 最後四個數位是 0107,因此請查閱 NTSTATUS 值 數據表中的0x00000107。
- 錯誤為:
STATUS_SOME_NOT_MAPPED
有些結果碼是一目了然的,有些則是較泛型且需要進一步分析。 在上述範例中,ERROR_DISK_FULL表示硬碟已滿,需要額外的空間才能完成 Windows 升級。 訊息STATUS_SOME_NOT_MAPPED較為模棱兩可,表示動作擱置中。 在此情況下,擱置中的動作通常是先前安裝嘗試的清除作業,可透過系統重新啟動來解決。
擴充程序代碼
重要事項
擴充程式代碼會反映目前 Windows 10 升級程式,而且未來版本的 Windows 10 可能會變更。 本節中討論的程式代碼適用於 Windows 10 1607 版,也稱為年度更新版。
當發生錯誤時,擴充程式代碼可以與階段和作業進行比對。 若要比對延伸程式代碼與階段和作業:
- 使用第一個數位來識別階段 (例如:0x4000D = 4) 。
- 使用最後兩位數來識別作業 (例如:0x4000D = 0D) 。
- 比對階段和作業與下表中所提供的值。
下表提供擴充程式代碼值的對應階段和作業:
擴充程式代碼:階段
Hex | 階段 |
---|---|
0 | SP_EXECUTION_UNKNOWN |
1 | SP_EXECUTION_DOWNLEVEL |
2 | SP_EXECUTION_SAFE_OS |
3 | SP_EXECUTION_FIRST_BOOT |
4 | SP_EXECUTION_OOBE_BOOT |
5 | SP_EXECUTION_UNINSTALL |
擴充程式代碼:作業
Hex | 作業 |
---|---|
0 | SP_EXECUTION_OP_UNKNOWN |
1 | SP_EXECUTION_OP_COPY_PAYLOAD |
2 | SP_EXECUTION_OP_DOWNLOAD_UPDATES |
3 | SP_EXECUTION_OP_INSTALL_UPDATES |
4 | SP_EXECUTION_OP_INSTALL_RECOVERY_ENVIRONMENT |
5 | SP_EXECUTION_OP_INSTALL_RECOVERY_IMAGE |
6 | SP_EXECUTION_OP_REPLICATE_OC |
7 | SP_EXECUTION_OP_INSTALL_DRIVERS |
8 | SP_EXECUTION_OP_PREPARE_SAFE_OS |
9 | SP_EXECUTION_OP_PREPARE_ROLLBACK |
A | SP_EXECUTION_OP_PREPARE_FIRST_BOOT |
B | SP_EXECUTION_OP_PREPARE_OOBE_BOOT |
C | SP_EXECUTION_OP_APPLY_IMAGE |
D | SP_EXECUTION_OP_MIGRATE_DATA |
E | SP_EXECUTION_OP_SET_PRODUCT_KEY |
F | SP_EXECUTION_OP_ADD_UNATTEND |
Hex | 作業 |
---|---|
10 | SP_EXECUTION_OP_ADD_DRIVER |
11 | SP_EXECUTION_OP_ENABLE_FEATURE |
12 | SP_EXECUTION_OP_DISABLE_FEATURE |
13 | SP_EXECUTION_OP_REGISTER_ASYNC_PROCESS |
14 | SP_EXECUTION_OP_REGISTER_SYNC_PROCESS |
15 | SP_EXECUTION_OP_CREATE_FILE |
16 | SP_EXECUTION_OP_CREATE_REGISTRY |
17 | SP_EXECUTION_OP_BOOT |
18 | SP_EXECUTION_OP_SYSPREP |
19 | SP_EXECUTION_OP_OOBE |
1A | SP_EXECUTION_OP_BEGIN_FIRST_BOOT |
1B | SP_EXECUTION_OP_END_FIRST_BOOT |
1C | SP_EXECUTION_OP_BEGIN_OOBE_BOOT |
1D | SP_EXECUTION_OP_END_OOBE_BOOT |
1E | SP_EXECUTION_OP_PRE_OOBE |
1F | SP_EXECUTION_OP_POST_OOBE |
20 | SP_EXECUTION_OP_ADD_PROVISIONING_PACKAGE |
例如:0x4000D的擴充程式代碼,表示在數據遷移 (000D) 階段 4 (0x4) 期間發生問題。
資料收集
若您需要 Microsoft 支援,建議您按照使用 TSS 收集部署相關問題的資訊所述步驟來收集資訊。