You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: support/windows-server/setup-upgrade-and-drivers/error-0x80070003-during-process-drivers-for-migration.md
+18-18Lines changed: 18 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
---
2
-
title: Windows Upgrade fails and generates error 0x80070003 during "Process Drivers for Migration" operation
3
-
description: Describes how to resolve issues that produce 0x80070003 during the "Process Drivers for Migration" operation of an in-place upgrade of Windows or Windows Server.
2
+
title: 0x80070003 Error and Windows Upgrade Fails During Process Drivers for Migration Operation
3
+
description: Discusses how to resolve the "0x80070003" error during the "Process Drivers for Migration" operation of an in-place upgrade of Windows or Windows Server.
4
4
ms.date: 09/26/2025
5
5
manager: dcscontentpm
6
6
audience: itpro
@@ -10,35 +10,35 @@ ms.custom:
10
10
- sap:windows setup, upgrade and deployment\installing or upgrading windows
11
11
- pcy:WinComm Devices Deploy
12
12
---
13
-
# Windows Upgrade fails and generates error 0x80070003 during "Process Drivers for Migration" operation
13
+
# "0x80070003" error and Windows upgrade fails during "Process Drivers for Migration"
14
14
15
15
*Applies to*: Windows Server 2025, Windows Server 2022, Windows 11
16
16
17
-
This article describes how to resolve issues that produce 0x80070003 during the "Process Drivers for Migration" operation of an in-place upgrade of Windows or Windows Server.
17
+
This article discusses how to resolve issues that cause a "0x80070003" error to occur during the "Process Drivers for Migration" operation of an in-place upgrade of Windows or Windows Server.
18
18
19
19
## Symptoms
20
20
21
-
When you try to upgrade a Windows Server or Windows Client computer to a newer version of Windows (an *in-place upgrade*), the upgrade fails. The upgrade process generates error 0x80070003.
21
+
When you try to upgrade a Windows Server-based or Windows Client-based computer to a newer version of the OS (an *in-place upgrade*), the upgrade process fails. When this error occurs, the upgrade process generates a "0x80070003" error.
22
22
23
23
## Cause
24
24
25
-
The contents of a servicing stack folder in the WinSxS system folder are missing or damaged. Without the information in this folder, DISM and the upgrade engine can't migrate drivers. The upgrade fails, generating error 0x80070003.
25
+
The contents of a servicing stack folder in the WinSxS system folder are missing or damaged. Without the information in this folder, DISM and the upgrade engine can't migrate drivers. The upgrade fails and generates a "0x80070003" error.
26
26
27
27
## Resolution
28
28
29
29
> [!IMPORTANT]
30
30
> Before you perform any upgrade operation, back up your system.
31
31
32
-
### Step 1: Confirm the issue
32
+
### Step 1: Verify the issue
33
33
34
-
To gather additional information about the issue, examine the following logs. You can use a text editor such as Notepad or Notepad++ to view the log files. Use the **Find** command (CTRL+F) to search for specific strings as noted. The following tables describe the most useful log files, and in each file, the strings that might provide more information about the error.
34
+
To gather additional information about the issue, examine the relevant logs. You can use a text editor, such as Notepad, to view the log files. Use the **Find** command (CTRL+F) to search for specific strings, as noted. The following tables list the most useful log files. They also list the strings in each file that might provide more information about the error.
35
35
36
36
| Log files | Location | Description |
37
37
| - | - | - |
38
38
| SetupAct.log | C:\$WINDOWS.~BT\Sources\Panther | This log records setup activity during the early phase of the upgrade process. |
39
-
| Upgrade engine (MOUPG) logs<br />such as the following files:<ul><li>setuperr.log</li><li>setupdiagresults.xml</li><li>Other logs whose file names begin with "MOSetup" or "MOU."</li></ul> | C:\$WINDOWS.~BT\Sources\Panther | These logs show high-level upgrade decisions and phase transitions. |
39
+
| Upgrade engine (MOUPG) logs<br />such as the following files:<ul><li>setuperr.log</li><li>setupdiagresults.xml</li><li>Other logs whose file name begins with "MOSetup" or "MOU."</li></ul> | C:\$WINDOWS.~BT\Sources\Panther | These logs show high-level upgrade decisions and phase transitions. |
40
40
| DISM.log | C:\Windows\Logs\DISM | This log provides details when DISM (Deployment Image Servicing and Management) commands fail. |
41
-
| CBS.log (Component-Based Servicing log) | C:\Windows\Logs\CBS | Windows uses CBS logs to track servicing operations, such as updates and upgrades. This file might be large enough that it would be easier to manage by using Notepad ++ than by using Notepad. |
41
+
| CBS.log (Component-Based Servicing log) | C:\Windows\Logs\CBS | Windows uses CBS logs to track servicing operations, such as updates and upgrades.<Br /><Br />**Note:** If this file is large, it might be easier to manage by using an alternative text editor, such as Notepad ++. |
42
42
43
43
| Log files | Strings to search for |
44
44
| - | - |
@@ -47,7 +47,7 @@ To gather additional information about the issue, examine the following logs. Yo
47
47
| DISM.log | "0x80070003"<br />or text that resembles "Failed to bind the online servicing stack - CDISMOSServiceManager::get_ServicingStackDirectory(hr:0x80070003)" |
48
48
| CBS.log | "Failed to create worker session"<br />or repeated strings that mention servicing failures |
49
49
50
-
Additionally, you can manually check for a damaged servicing stack folder. In the C:\Windows\WinSxS folder, look for at least one folder that has name that includes the string "serviceingstack." For example, you might find folders that have names that resemble the following strings:
50
+
Additionally, you can manually check for a damaged servicing stack folder. In the C:\Windows\WinSxS folder, look for at least one folder that has name that includes the "serviceingstack" string. For example, you might find folders that have names that resemble the following strings:
@@ -66,9 +66,9 @@ Such folders shouldn't be empty.
66
66
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Version"
67
67
```
68
68
69
-
This information confirms the current version of the servicing stack on the computer.
69
+
The command output confirms the current version of the servicing stack on the computer.
70
70
71
-
1. On the affected computer, create a temporary folder (as an example for this procedure, we'll use C:\TemporaryFolder).
71
+
1. On the affected computer, create a temporary folder (for example, C:\TemporaryFolder).
72
72
73
73
1. Download the latest Servicing Stack Update (SSU) for your Windows version from [Servicing Stack Updates (SSU): Frequently Asked Questions](https://support.microsoft.com/topic/servicing-stack-updates-ssu-frequently-asked-questions-06b62771-1cb0-368c-09cf-87c4efc4f2fe).
74
74
@@ -88,7 +88,7 @@ Such folders shouldn't be empty.
88
88
> - Do not take ownership of the WinSxS folder or its subfolders, and do not change the folder permissions.
89
89
> - This procedure uses the `robocopy /B` command to replace the servicing stack folders in the WinSxS folder with servicing stack folders from the downloaded SSU. `Robocopy /B` preserves the file and folder permissions.
90
90
91
-
1. Open an administrative PowerShell window. To define a set of variables for the robocopy operation, run the following commands, in sequence.
91
+
1. Open an administrative PowerShell window. To define a set of variables for the robocopy operation, run the following commands, in sequence:
92
92
93
93
```powershell
94
94
$src = "C:\TemporaryFolder"
@@ -99,9 +99,9 @@ Such folders shouldn't be empty.
99
99
```
100
100
101
101
> [!NOTE]
102
-
> These commands continue to use the C:\TemporaryFolder folder that was introduced in the previous section, and also introduces a C:\Repair folder to store a log file.
102
+
> These commands continue to use the C:\TemporaryFolder folder that was introduced in the previous section. They also introduce a C:\Repair folder to store a log file in.
103
103
104
-
1.If you want to see a list of the items without actually copying them, run the following command:
104
+
1.To view a list of the items without actually copying them, run the following command:
@@ -111,7 +111,7 @@ Such folders shouldn't be empty.
111
111
112
112
> [!NOTE]
113
113
>
114
-
> - The `Get-ChildItem -Directory` cmdlet selects only subfolders, so the robocopy operation skips root-level files such as .mum and .manifest files.
114
+
> - The `Get-ChildItem -Directory` cmdlet selects only subfolders. Therefore, the robocopy operation skips root-level files such as .mum and .manifest files.
115
115
> - For more information about the `Get-ChildItem` cmdlet and its options, see [Get-ChildItem](/powershell/module/microsoft.powershell.management/get-childitem?view=powershell-7.5).
116
116
> - For more information about the `robocopy` command and its switches, see [robocopy](/windows-server/administration/windows-commands/robocopy).
117
117
@@ -129,4 +129,4 @@ Such folders shouldn't be empty.
129
129
for /d %i in (C:\TemporaryFolder\*) do robocopy "%i" "C:\Windows\WinSxS" /E /COPYALL /B /R:0 /W:0
130
130
```
131
131
132
-
1. After you finish copying the SSU files, try to upgrade Windows again.
132
+
1. After you finish copying the SSU files, try again to upgrade Windows.
0 commit comments