Error Code 0xC1900101.

The IT Guys 85 Reputation points
2026-11-10T14:39:28.5166667+00:00

During the migration process from Windows Server 2016 to Windows Server 2025, the upgrade encountered an unexpected failure with above error

Windows for business | Windows 365 Enterprise
0 comments No comments

Answer accepted by question author
Ronald Sabiiti 1,670 Reputation points Independent Advisor
2026-11-10T15:31:32.4366667+00:00

Hello The IT Guys,

Error 0xC1900101 during the Windows Server 2016 to 2025 upgrade commonly indicates a driver or hardware compatibility issue.

Please try the following:

  1. Update storage, network, chipset, and RAID drivers, along with server firmware.
  2. Temporarily remove or update incompatible third-party antivirus and security software.
  3. Disconnect unnecessary external devices.
  4. Ensure sufficient disk space and take a full server backup before retrying.
  5. Run Microsoft's SetupDiag tool to identify the cause of the rollback.

Relevant Microsoft documentation:

Hope this helps!

Ronald

Was this answer helpful?

1 person found this answer helpful.
0 comments No comments

1 additional answer

Sort by: Oldest
  1. AI answer

    2026-11-10T14:41:06.77+00:00

    Run SetupDiag and inspect the rollback logs before retrying, because 0xC1900101 is a generic rollback code—usually involving an incompatible driver—and does not identify the specific component by itself.^1^

    1. Collect the actual failure details

    A direct Windows Server 2016 → Windows Server 2025 in-place upgrade is supported with installation media on a nonclustered server. Windows Update does not provide this direct path from Server 2016.^2^

    1. Sign in after the rollback and open:
      • C:\Windows\Logs\SetupDiag\SetupDiagResults.xml
      • Registry Editor → HKEY_LOCAL_MACHINE\SYSTEM\Setup\SetupDiag\Results
      Windows Setup normally runs SetupDiag automatically after a failure.^3^
    2. If no useful result exists, download the latest SetupDiag.exe, save it as C:\SetupDiag\SetupDiag.exe, and run this from an elevated Command Prompt:
         mkdir C:\SetupDiag 2>nul
         cd /d C:\SetupDiag
         SetupDiag.exe /Output:C:\SetupDiag\Results.log /Verbose
         notepad C:\SetupDiag\Results.log
      
      SetupDiag requires .NET Framework 4.7.2 or later. If needed, check the installed version:
         reg.exe query "HKLM\SOFTWARE\Microsoft\Net Framework Setup\NDP\v4" /s
      
    3. Record the following from the result:
      • Complete result and extend code, such as 0xC1900101-0x20017
      • Matching Profile Found or matched rule
      • Named driver, service, device, or application
      • Failure phase and operation
      If SetupDiag lists several failures, the last failure is typically the fatal one.^3^

    2. Inspect the rollback logs

    Use an elevated Command Prompt or enable File Explorer → View → Show → Hidden items and unhide protected operating-system files. Review:

    • C:\$WINDOWS.~BT\Sources\Rollback\setupact.log
    • C:\$WINDOWS.~BT\Sources\Rollback\setuperr.log
    • C:\$WINDOWS.~BT\Sources\Rollback\setupapi\setupapi.dev.log
    • C:\$WINDOWS.~BT\Sources\Rollback\setupmem.dmp
    • C:\$WINDOWS.~BT\Sources\Rollback\*.evtx
    • C:\$WINDOWS.~BT\Sources\Panther\setupact.log
    • C:\$WINDOWS.~BT\Sources\Panther\setuperr.log

    For 0xC1900101, the rollback setupact.log and event logs are primary evidence; setupapi.dev.log is particularly useful for device-install failures such as extend code 0x30018.^4^

    Search upward from the last occurrence of the error code and correlate entries by timestamp. Also search for:

    Shell application requested abort
    Abandoning apply due to error for object
    

    3. Remediate only the identified component

    Depending on the result:

    • Update or uninstall the named storage, RAID/HBA, NIC, chipset, or other device driver.
    • If SetupDiag names disk encryption, antivirus, EDR, backup, or another filter driver, use that vendor’s supported removal or upgrade procedure.
    • Update BIOS/firmware only through the hardware or VM-platform vendor.
    • If the extend code is 0x20017, concentrate on boot/storage drivers, disk-encryption software, and possible hardware failure.
    • If it is 0x30018, investigate the device named in setupapi.dev.log and disconnect nonessential peripherals.^1^

    Before retrying, create and restore-test a full backup. Then mount matching Server 2025 installation media inside Server 2016, run setup.exe, and select Keep files, settings, and apps.^5^

    Conditional fallbacks

    • If SetupDiag identifies no component: perform a clean boot, disconnect nonessential peripherals, remove unused devices/drivers, and retry with a minimal driver and startup-service set.^1^
    • If NIC Teaming is enabled: disable it before the upgrade and re-enable it afterward.^2^
    • If this is a domain controller: do not continue with an in-place upgrade; install Server 2025 cleanly, promote the new DC, and demote the old DC.^5^
    • If this is an Azure VM: first run the Azure VM OS Upgrade Assessment Tool and follow the Azure-specific procedure.^6^ If that procedure requires temporarily disabling security software or firewalls, this increases exposure—use a tightly controlled maintenance window with network isolation or equivalent protections, then immediately re-enable and verify every security control after the attempt.

    Provide the complete result-plus-extend code and the SetupDiag matched rule to narrow remediation to the failing phase.


    References

    1. Windows 10 upgrade resolution procedures - Windows Client
    2. Plan Your Windows Server Upgrade Path | Microsoft Learn
    3. SetupDiag
    4. Windows upgrade log files
    5. Upgrade Windows Server in Place | Microsoft Learn
    6. In-place upgrade for VMs running Windows Server in Azure
    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.