From 5efbc9a277a9529c4aa54ad46a8c6231d56b7297 Mon Sep 17 00:00:00 2001 From: Greg Lindsay Date: Thu, 6 Oct 2016 13:26:08 -0700 Subject: [PATCH] possible final draft --- .../resolve-windows-10-upgrade-errors.md | 141 +++++++++--------- 1 file changed, 71 insertions(+), 70 deletions(-) diff --git a/windows/deploy/resolve-windows-10-upgrade-errors.md b/windows/deploy/resolve-windows-10-upgrade-errors.md index fa2595faa2..8606f45468 100644 --- a/windows/deploy/resolve-windows-10-upgrade-errors.md +++ b/windows/deploy/resolve-windows-10-upgrade-errors.md @@ -47,7 +47,7 @@ The Windows Setup application is used to upgrade a computer to Windows 10, or to 4. **Second boot phase**: Final settings are applied. This is also called the **OOBE boot phase**. - Example error: 0x4000D, 0x40017 5. **Uninstall phase**: This phase occurs if upgrade is unsuccessful. - - Example error: 0x50011, 0x50012 + - Example error: 0x50000 **Figure 1**: Phases of a successful Windows 10 upgrade (uninstall is not shown): @@ -198,11 +198,13 @@ Several log files are created during each phase of the upgrade process. These lo Log filePhase: LocationDescriptionWhen to use -setupact.logDown-Level:
$Windows.~BT\Sources\PantherContains information about setup actions during the downlevel phase. All down-level failures and starting point for rollback investigations.
This is the most important log for diagnosing setup issues. -OOBE:
$Windows.~BT\Sources\PantherContains information about actions during the OOBE phase.Investigating rollbacks that failed during OOBE phase and operations – 0x4001C, 0x4001D, 0x4001E, 0x4001F. -Rollback:
$Windows.~BT\Sources\PantherContains information about actions during rollback.Investigating generic rollbacks - 0xC1900101. -Pre-initialization (prior to downlevel):
$Windows.~BT\Sources\PantherContains information about initializing setup.If setup fails to launch. -Post-upgrade (after OOBE):
$Windows.~BT\Sources\PantherContains information about setup actions during the installation.Investigate post-upgrade related issues. +setupact.logDown-Level:
$Windows.~BT\Sources\PantherContains information about setup actions during the downlevel phase. +All down-level failures and starting point for rollback investigations.
This is the most important log for diagnosing setup issues. +OOBE:
$Windows.~BT\Sources\Panther\UnattendGC +Contains information about actions during the OOBE phase.Investigating rollbacks that failed during OOBE phase and operations – 0x4001C, 0x4001D, 0x4001E, 0x4001F. +Rollback:
$Windows.~BT\Sources\RollbackContains information about actions during rollback.Investigating generic rollbacks - 0xC1900101. +Pre-initialization (prior to downlevel):
Windows\Contains information about initializing setup.If setup fails to launch. +Post-upgrade (after OOBE):
Windows\PantherContains information about setup actions during the installation.Investigate post-upgrade related issues. setuperr.logSame as setupact.logContains information about setup errors during the installation.Review all errors encountered during the installation phase. @@ -272,56 +274,59 @@ To analyze Windows Setup log files:
  • Search other log files for additional information matching these timestamps or errors. -For example, assume that searching for the result code "8007042B" reveals the following content from the setuperr.log file: +For example, assume that the error code for an error is 0x8007042B - 0x2000D. Searching for "8007042B" reveals the following content from the setuperr.log file: ->Some lines in the text below are shortened to enhance readability. The date and time at the start of each line (ex: 2016-09-08 09:20:05) is shortened to minutes and seconds. +>Some lines in the text below are shortened to enhance readability. The date and time at the start of each line (ex: 2016-10-05 15:27:08) is shortened to minutes and seconds, and the certificate file name which is a long text string is shortened to just "CN."

    setuperr.log content:

    -20:05, Error            SP     Error READ, 0x00000002 while gathering/applying object: 
    -23:33, Error            MIG    COnlineWinNTPlatform::AddPathToSearchIndexer - Failed to create CSearchManager instance, error: 0x80070422[gle=0x000003f0]
    -23:50, Error            SP     Error WRITE, 0x00000497 while gathering/applying object: File, C:\Users\user1\Cookies. Will return 0
    -23:50, Error            MIG    Error 1175 while applying object C:\Users\user1\Cookies. Shell application requested abort
    -23:50, Error [0x08097b] MIG    Abandoning apply due to error for object: C:\Users\user1\Cookies
    -23:51, Error                   Apply failed. Last error: 0x00000000
    -23:51, Error            SP     pSPDoOnlineApply: Apply operation failed. Error: 0x0000002C
    -23:52, Error            SP     Apply: Migration phase failed. Result: 44
    -23:52, Error            SP     Operation failed: OOBE boot apply. Error: 0x8007042B[gle=0x000000b7]
    -23:52, Error            SP     Operation execution failed: 13. hr = 0x8007042B[gle=0x000000b7]
    -23:52, Error            SP     Operation execution failed.[gle=0x000000b7]
    -23:52, Error            SP     CSetupPlatformPrivate::Execute: Failed to deserialize/execute pre-OOBEBoot operations. Error: 0x8007042B[gle=0x000000b7]
    +27:08, Error           SP     Error READ, 0x00000570 while gathering/applying object: File, C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18 [CN]. Will return 0[gle=0x00000570]
    +27:08, Error           MIG    Error 1392 while gathering object C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18 [CN]. Shell application requested abort![gle=0x00000570]
    +27:08, Error                  Gather failed. Last error: 0x00000000
    +27:08, Error           SP     SPDoFrameworkGather: Gather operation failed. Error: 0x0000002C
    +27:09, Error           SP     CMigrateFramework: Gather framework failed. Status: 44
    +27:09, Error           SP     Operation failed: Migrate framework (Full). Error: 0x8007042B[gle=0x000000b7]
    +27:09, Error           SP     Operation execution failed: 13. hr = 0x8007042B[gle=0x000000b7]
    +27:09, Error           SP     CSetupPlatformPrivate::Execute: Execution of operations queue failed, abandoning. Error: 0x8007042B[gle=0x000000b7]
     
    -The third line indicates there was an error **0x00000497** with the folder **C:\Users\user1\Cookies** (shown below): +The first line indicates there was an error **0x00000570** with the file **C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18 [CN]** (shown below):
    -23:50, Error            SP     Error WRITE, 0x00000497 while gathering/applying object: File, C:\Users\user1\Cookies. Will return 0
    +27:08, Error           SP     Error READ, 0x00000570 while gathering/applying object: File, C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18 [CN]. Will return 0[gle=0x00000570]
     
    -
    The error 0x00000497 is a [Win32 error code](https://msdn.microsoft.com/en-us/library/cc231199.aspx) corresponding to: ERROR_UNABLE_TO_REMOVE_REPLACED: Unable to remove the file to be replaced. +
    The error 0x00000570 is a [Win32 error code](https://msdn.microsoft.com/en-us/library/cc231199.aspx) corresponding to: ERROR_FILE_CORRUPT: The file or directory is corrupted and unreadable. -Therefore, Windows Setup failed because it was not able to migrate the **C:\Users\user1\Cookies** folder. Searching the setupact.log file for additional details, the following text is found confirming our suspicion that this file is the cause of the upgrade failure: +Therefore, Windows Setup failed because it was not able to migrate the corrupt file **C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18\[CN]**. This file is a local system certificate and can be safely deleted. Searching the setupact.log file for additional details, the phrase "Shell application requested abort" is found in a location with the same timestamp as the lines in setuperr.log. This confirms our suspicion that this file is the cause of the upgrade failure:

    setupact.log content:

    -23:50, Warning                 RECAPPLY: Error while moving \\?\C:\Windows.old\Users\user1\Cookies to \\?\C:\Users\user1\Cookies. Error: 0x000000B7
    -23:50, Info             MIG    Cannot apply recursively object: C:\Users\user1\Cookies:Win32Exception:Cannot create a file when that file already exists.
    -23:50, Warning          MIG    Could not replace object C:\Users\user1\Cookies. Target Object cannot be removed.
    -23:50, Info             MIG    Error 1175 during apply of object C:\Users\user1\Cookies. Will ask shell application for resolution.
    -23:50, Error            SP     Error WRITE, 0x00000497 while gathering/applying object: File, C:\Users\user1b\Cookies. Will return 0
    -23:50, Error            MIG    Error 1175 while applying object C:\Users\user1\Cookies. Shell application requested abort
    -23:50, Error [0x08097b] MIG    Abandoning apply due to error for object: C:\Users\user1\Cookies
    +27:00, Info                   Gather started at 10/5/2016 23:27:00
    +27:00, Info [0x080489] MIG    Setting system object filter context (System)
    +27:00, Info [0x0803e5] MIG    Not unmapping HKCU\Software\Classes; it is not mapped
    +27:00, Info [0x0803e5] MIG    Not unmapping HKCU; it is not mapped
    +27:00, Info            SP     ExecuteProgress: Elapsed events:1 of 4, Percent: 12
    +27:00, Info [0x0802c6] MIG    Processing GATHER for migration unit: \UpgradeFramework (CMXEAgent)
    +27:08, Error           SP     Error READ, 0x00000570 while gathering/applying object: File, C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18 [CN]. Will return 0[gle=0x00000570]
    +27:08, Error           MIG    Error 1392 while gathering object C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18 [CN]. Shell application requested abort![gle=0x00000570]
    +27:08, Info            SP     ExecuteProgress: Elapsed events:2 of 4, Percent: 25
    +27:08, Info            SP     ExecuteProgress: Elapsed events:3 of 4, Percent: 37
    +27:08, Info [0x080489] MIG    Setting system object filter context (System)
    +27:08, Info [0x0803e5] MIG    Not unmapping HKCU\Software\Classes; it is not mapped
    +27:08, Info [0x0803e5] MIG    Not unmapping HKCU; it is not mapped
    +27:08, Info            MIG    COutOfProcPluginFactory::FreeSurrogateHost: Shutdown in progress.
    +27:08, Info            MIG    COutOfProcPluginFactory::LaunchSurrogateHost::CommandLine: -shortened-
    +27:08, Info            MIG    COutOfProcPluginFactory::LaunchSurrogateHost: Successfully launched host and got control object.
    +27:08, Error                  Gather failed. Last error: 0x00000000
    +27:08, Info                   Gather ended at 10/5/2016 23:27:08 with result 44
    +27:08, Info                   Leaving MigGather method
    +27:08, Error           SP     SPDoFrameworkGather: Gather operation failed. Error: 0x0000002C
     
    -The setupact.log file also contains information detailing the configuration of files and folders. By searching for "C:\Users\user1\Cookies" we are able to determine that this folder is not installed in the default location: - -
    -49:12, Info             MIG    Known folder CSIDL_COOKIES: C:\Users\user1\Cookies, default location: No
    -
    - -This analysis indicates that the Windows upgrade error can be resolved by configuring the C:\Users\user1\Cookies folder to use its default location. +This analysis indicates that the Windows upgrade error can be resolved by deleting the C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18\[CN] file. Note: In this example, the full, unshortened file name is C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18\be8228fb2d3cb6c6b0ccd9ad51b320b4_a43d512c-69f2-42de-aef9-7a88fabdaa3f. ## Common error codes @@ -333,7 +338,7 @@ A common result code is 0xC1900101. This result code can be thrown at any stage - Event logs: $Windows.~bt\Sources\Rollback\*.evtx - The device install log: $Windows.~bt\Sources\Rollback\setupapi\setupapi.dev.log -The device install log is particularly helpful if rollback occurs during the sysprep operation (extend code 0x30018). To resolve a rollback due to driver conflicts, run setup in the absence of drivers by performing a [clean boot](https://support.microsoft.com/en-us/kb/929135) before initiating the upgrade process. +The device install log is particularly helpful if rollback occurs during the sysprep operation (extend code 0x30018). To resolve a rollback due to driver conflicts, try running setup using a minimal set of drivers and startup programs by performing a [clean boot](https://support.microsoft.com/en-us/kb/929135) before initiating the upgrade process.

    See the following general troubleshooting procedures associated with a result code of 0xC1900101: @@ -375,7 +380,7 @@ The device install log is particularly helpful if rollback occurs during the sys

    Cause -
    Windows Setup encountered an unspecified error during the WinPE phase. +
    Windows Setup encountered an unspecified error during Wim apply in the WinPE phase.
    This is generally caused by out-of-date drivers.
    @@ -404,7 +409,7 @@ The device install log is particularly helpful if rollback occurs during the sys Cause A driver has caused an illegal operation.
    Windows was not able to migrate the driver, resulting in a rollback of the operating system. - +

    This is a safeOS boot failure, typically caused by drivers or non-Microsoft disk encryption software. @@ -482,6 +487,10 @@ Disconnect all peripheral devices that are connected to the system, except for t

    Cause
    A rollback occurred due to a driver configuration issue. +

    Installation failed during the second boot phase while attempting the MIGRATE_DATA operation. + +

    This can occur due to incompatible drivers. +

    @@ -489,8 +498,10 @@ Disconnect all peripheral devices that are connected to the system, except for t
    Mitigation -

    Review the rollback log and determine the stop code. -
    The rollback log is located in the **C:\$Windows.~BT\Sources\Panther** folder. Look for text similar to the following: +

    +

    Check supplemental rollback logs for a setupmem.dmp file, or event logs for any unexpected reboots or errors. +

    Review the rollback log and determine the stop code. +
    The rollback log is located in the **C:\$Windows.~BT\Sources\Panther** folder. An example analysis is shown below. This example is not representative of all cases:

    Info SP Crash 0x0000007E detected
    Info SP Module name :
    Info SP Bugcheck parameter 1 : 0xFFFFFFFFC0000005 @@ -628,7 +639,7 @@ Disable or uninstall non-Microsoft antivirus applications, disconnect all unnece

    The installation failed during the second boot phase while attempting the MIGRATE_DATA operation. -
    This issue can occur due to an application or driver incompatibility. +
    This issue can occur due to file system, application, or driver issues.
    @@ -639,9 +650,7 @@ The installation failed during the second boot phase while attempting the MIGRAT Mitigation -Perform a [clean boot](https://support.microsoft.com/en-us/kb/929135), and reattempt the upgrade. - -

    Ensure you select the option to "Download and install updates (recommended)." +[Analyze log files](#analyze-log-files) in order to determine the file, application, or driver that is not able to be migrated. Disconnect, update, remove, or replace the device or object. @@ -812,12 +821,13 @@ Download and run the media creation tool. See [Download windows 10](https://www. - - - + - - + + +
    Error CodesCauseMitigation
    0x80070003- 0x20007This error occurs when there is problem with the Internet connection during the Windows 10 upgrade. +
    0x80070003- 0x20007 +This is a failure during SafeOS phase driver installation. -Repair network connectivity issues and reattempt the upgrade process. -
    Alternatively, create installation media for an offline upgrade using the [Media Creation Tool](https://www.microsoft.com/en-us/software-download/windows10). Download the Windows 10 image using a computer that is connected to the Internet. +
    [Verify device drivers](https://msdn.microsoft.com/windows/hardware/drivers/install/troubleshooting-device-and-driver-installations) on the computer, and [analyze log files](#analyze-log-files) to determine the problem driver.
    0x8007025D - 0x2000CThis error occurs if the ISO file's metadata is corrupt."Re-download the ISO/Media and re-attempt the upgrade. +
    0x8007025D - 0x2000C +This error occurs if the ISO file's metadata is corrupt."Re-download the ISO/Media and re-attempt the upgrade. Alternatively, re-create installation media the [Media Creation Tool](https://www.microsoft.com/en-us/software-download/windows10). @@ -827,12 +837,10 @@ Alternatively, re-create installation media the [Media Creation Tool](https://ww [Verify device drivers](https://msdn.microsoft.com/windows/hardware/drivers/install/troubleshooting-device-and-driver-installations) on the computer, and [analyze log files](#analyze-log-files) to determine the problem driver.
    0xC1900101 - 0x2000BOne or more device drivers are blocking creating of the migration file list. - -Disconnect unnecessary devices and upgrade device drivers.
    0xC1900101 - 0x2000c -An unspecified error occurred during the WINPE Phase. This is due to an outdated driver. -Update drivers on the computer, and select "Download and install updates (recommended)" during the upgrade process. Disconnect devices other than the mouse, keyboard and display.
    An unspecified error occurred in the SafeOS phase during WIM apply. This can be caused by an outdated driver or disk corruption. +Run checkdisk to repair the file system. For more information, see the [quick fixes](#quick-fixes) section in this guide. +

    Update drivers on the computer, and select "Download and install updates (recommended)" during the upgrade process. Disconnect devices other than the mouse, keyboard and display.

    0xC1900200 - 0x20008 The computer doesn’t meet the minimum requirements to download or upgrade to Windows 10. @@ -840,26 +848,19 @@ Alternatively, re-create installation media the [Media Creation Tool](https://ww See [Windows 10 Specifications](https://www.microsoft.com/en-us/windows/windows-10-specifications) and verify the computer meets minimum requirements.
    Review logs for [compatibility information](https://blogs.technet.microsoft.com/askcore/2016/01/21/using-the-windows-10-compatibility-reports-to-understand-upgrade-issues/).
    0x80070004 - 0x3000DA reserved name is used as the computer name. +
    0x80070004 - 0x3000D +This is a problem with data migration during the first boot phase. There are multiple possible causes. -Ensure that you do not use a [reserved name](https://support.microsoft.com/en-us/kb/3086101) as the computer name. System, Local, Self, and Network are reserved names that can’t be used as the computer name.
    0xC1900101 - 0x40001 -A device driver did not handle power state transition requests properly while shutting down, suspending or resuming from standby, or suspending or resuming from hibernation. - -Update, remove, or disable the following devices which frequently cause power state transition errors: -
    1. Internal WIFI Modems. -
    2. Externally connected USB devices such as webcams, printers, and USB hard drives.
    -
    Also, verify all devices are on the [Hardware Compatibility List](http://sysdev.microsoft.com/EN-US/HARDWARE/LPL/DEFAULT.ASPX) (HCL) and have WHQL signed and certified drivers. Analyze [log files](#log-files) if needed to determine the problem device or driver. -
    [Analyze log files](#analyze-log-files) to determine the issue.
    0xC1900101 - 0x4001E Installation failed in the SECOND_BOOT phase with an error during PRE_OOBE operation. This is a generic error that occurs during the OOBE phase of setup. See the [0xC1900101](#0xC1900101) section of this guide and review general troubleshooting procedures described in that section.
    0x80070005 - 0x4000D -The installation failed in the SECOND_BOOT phase with an error in during MIGRATE_DATA operation. This can be caused by an incompatible application or driver. -Perform a [clean boot](https://support.microsoft.com/en-us/kb/929135) and then attempt the upgrade.
    The installation failed in the SECOND_BOOT phase with an error in during MIGRATE_DATA operation. This error indicates that access was denied while attempting to migrate data. +[Analyze log files](#analyze-log-files) to determine the data point that is reporting access denied.
    0x80070004 - 0x50012 -The computer account for the system has an invalid name. -Ensure that the [computer name](https://technet.microsoft.com/en-us/library/cc749460.aspx) does not contain invalid characters, and is not a [reserved name](https://support.microsoft.com/en-us/kb/3086101).
    Windows Setup failed to open a file. +[Analyze log files](#analyze-log-files) to determine the data point that is reporting access problems.
    0xC190020e
    0x80070070 - 0x50011
    0x80070070 - 0x50012