Download Windows Speedup Tool to fix errors and make PC run faster
If you’re encountering the error message The system registry contains invalid file paths when you attempt to upgrade from a lower version of Windows to a higher version of Windows, say from Windows 10 to Windows 11, then this post is intended to help you. You can try the solutions we will present in this post to successfully remediate this issue.
When you encounter this issue. you’ll receive the following full error message;
The system registry contains invalid file paths. Installation cannot proceed. This system image was applied without guaranteeing that drive-letter assignments would match across computers.
When this error prompt appears and the user clicks on OK, this leads to a restart and the following message appears:
Any changes made to the computer will be undone…
After half an eternity a restart occurs and after that the user will find his old Windows installed again.
Use the following suggestions if you encounter the “The system registry contains invalid file paths” error while upgrading Windows, say from Windows 10 to Windows 11.
- Delete the drive letter of the System Reserved partition
- Delete some entries in System Variables
- Clean install Windows 11/10.
Let’s take a look at the description of the process involved concerning each of the listed solutions.
1] Delete the drive letter of the System Reserved Partition
Though the System Reserved Partition does not have a drive letter, it has been seen in some cases that a drive letter is assigned to the System Reserved Partition. You can check if your System Reserved Partition has a drive letter or not in the Disk Management tool. If your System Reserved Partition has a drive letter, delete the drive letter.
To delete the drive letter of the System Reserved Partition, do the following:
- Press Windows key + R to invoke the Run dialog.
- In the Run dialog box, type diskmgmt.msc and hit Enter to open Disk Management.
- In the window that opens, right-click on the System Reserved partition in the lower pane and select Change Drive Letter and Paths.
- In the dialog that opens, click the Remove button.
- Exit the Disk Management console and restart your PC.
On boot, retry the upgrade and see if the process will complete successfully without the error. Otherwise, try the next solution.
2] Delete some entries in System Variables
To delete some system variable entries on your Windows computer, do the following:
- Invoke the Run dialog box.
- In the Run dialog box, type control system and hit Enter to open the System Control Panel.
- In the System window, choose Advanced System Settings in the left column.
- In the System Properties window, click the Environment Variables button.
- Under System Variables, click Path.
- Now delete every entry except entries with the following path:
C:\Windows\system32
C:\Windows\Powershell
Once done, restart the PC, try the upgrade again, and see if the issue is resolved or not. If the latter is the case, try the next solution.
3] Clean install Windows 11/10
You’re most likely to encounter this error if you’re using the Update Assistant or directly running setup from within the mounted Windows 11/10 ISO. This solution entails you try to clean install Windows 11/10 on the machine instead and see if you can get past this upgrade block.
To perform the Clean Installation of Windows 11/10, you need to format your C drive and then proceed with the installation. This will erase all your data stored on the C drive. The data on other hard drive partitions will not be erased. However, from the safe side, we recommend you back up your data stored on the other hard drive partitions, so you can restore the data if you accidentally format the wrong hard drive partition during the Windows 11/10 Clean Installation process.
Select the correct hard drive partition while performing the Clean Installation of Windows 11/10. The Clean Installation process will require you to create a bootable USB flash drive with the Windows 11/10 ISO file. You can use a third-party tool, like Rufus to make a USB flash drive bootable.
Hope this helps!
How do I repair the Windows registry?
If the Registry is corrupt, you will experience various symptoms on your Windows computer, like frequent crashes, frequent error messages, etc. You may also experience slow performance on your computer. Hence, it is important to fix the corrupt Registry. There are some safest ways to repair the corrupt Registry, like performing the SFC and DISM scans to repair the corrupt system image files, resetting Windows 11/10, performing Startup Repair, etc. To perform the Startup Repair, you need to boot into the Windows Recovery Environment.
Why can’t I update to Windows 11?
If the Windows 11 Update keeps failing on your system, first, check if you have enough space on your C drive. If your C drive is almost full, Windows Update will not install. Corrupt Windows Update Components also cause Windows Updates to fail, whereas, in some cases, a third-party application or service interrupts Windows Update and causes it to fail. Moreover, antivirus software also stops Windows 11 from installing Windows Updates sometimes.
Read next: Can’t upgrade to Windows 11 even though I meet the requirements.
Obinna has completed B.Tech in Information & Communication Technology. He has worked as a System Support Engineer, primarily on User Endpoint Administration, as well as a Technical Analyst, primarily on Server/System Administration. He also has experience as a Network and Communications Officer. He has been a Windows Insider MVP (2020) and currently owns and runs a Computer Clinic.
Reader Interactions
Table of Contents
If you have recently updated or made some changes to your Windows 10 PC and are now getting the following error message ‘The system registry contains invalid file paths. Installation cannot proceed. This system image was applied without guaranteeing that drive-letter assignments would match across computers.’ Follow along as we take you through several different troubleshooting steps to fix it.
How to check TikTok’s top songs of the week. Check top song on TikTok.
Windows 10 is well known for error messages that seem to pop up at the worst possible times, ruining otherwise seamless computing. Although most of these error messages are only trivial, there are times when an error message can be the absolute worst thing to happen to your day.
Error message ‘The system registry contains invalid file paths. Installation cannot proceed. This system image was applied without guaranteeing that drive-letter assignments would match across computers.’ isn’t the absolute worst error message you may come across on Windows 10 but it can be horrible as it always wants to restart your PC, causing quite a lot of trouble if you are midway through something. Thankfully, there are a couple of things you can do to troubleshoot and hopefully fix this issue, so follow along as we guide you through the steps.
Related: How to hide files safely and securely on Android using Google’s Safe Folder option.
How do you fix error ‘The system registry contains invalid file paths. Installation cannot proceed. This system image was applied without guaranteeing that drive-letter assignments would match across computers.’
One of the quickest and easiest ways to fix this error message is to Delete the drive letter of the System Reserved Partition. To do this press Windows key + R to bring up the Run tool, then type or copy and paste diskmgmt.msc into the text box and press Enter.
This will bring up the Disk Management tool where you will need to right-click on the System Reserved partition in the lower pane and select Change Drive Letter and Paths. Next, in the new area click Remove then close the Disk Management window and Restart your computer. When your system restarts, retry the update and see it finishes properly. If it doesn’t you can try the following.
You may have to delete some entries in System Variables.
If the above steps didn’t help, you can try deleting some entries within System Variables. To do this open the Run tool by pressing Windows Key + R, then type Control System into the text box and press Enter. In the new window that appears click Advanced System Settings > Environment Variables. Now under System Variables click Path and delete every entry except entries with the following path:
Once you have done this, Restart your computer and you should be good to go.
On a side note…
If you are also a Facebook account holder and use the service for a variety of different reasons, you’ll probably want to check out the following article which investigates the Facebook Off-Facebook Activity log. A setting within Facebook that allows you to delete or customise the way Facebook shares your information between apps, services, and businesses.
How to delete your Off-Facebook Activity. (Information shared between Facebook and businesses)
Hi vandang,
Copy below code to notepad and save. After that import to your database. Before import you need to export your object (CU — 3-Tier Automation Mgt.). Below Code i merge NAV 2013 and R2 base on my requirement.
OBJECT Codeunit 419 3-Tier Automation Mgt. { OBJECT-PROPERTIES { Date=01/29/13; Time=[ 5:17:55 PM]; Modified=Yes; Version List=NAVW16.00.01; } PROPERTIES { OnRun=BEGIN END; } CODE { VAR Text001@1004 : TextConst 'ENU=Default'; Text004@1000000018 : TextConst 'ENU=The file %1 does not exist.'; Text006@1003 : TextConst 'ENU=Export'; Text007@1002 : TextConst 'ENU=Import'; Text009@1000 : TextConst 'ENU=All Files (*.*)|*.*'; CommonDialogMgnt@1005 : Codeunit 412; ClientTempPath@1006 : Text[1024]; Text010@1000000019 : TextConst 'ENU=The file %1 has not been uploaded.'; Text011@1000000013 : TextConst 'ENU=You must specify a source file name.;ENA=You must specify a source file name.'; Text012@1000000012 : TextConst 'ENU=You must specify a target file name.;ENA=You must specify a target file name.'; XMLFileType@1000000008 : TextConst 'ENU=XML Files (*.xml)|*.xml;ENA=XML Files (*.xml)|*.xml'; WordFileType@1000000007 : TextConst 'ENU=Word Files (*.doc)|*.doc;ENA=Word Files (*.doc)|*.doc'; Word2007FileType@1000000006 : TextConst 'ENU=Word Files (*.doc*)|*.doc*;ENA=Word Files (*.doc*)|*.doc*'; ExcelFileType@1000000005 : TextConst 'ENU=Excel Files (*.xls)|*.xls;ENA=Excel Files (*.xls)|*.xls'; Excel2007FileType@1000000004 : TextConst 'ENU=Excel Files (*.xls*)|*.xls*;ENA=Excel Files (*.xls*)|*.xls*'; XSDFileType@1000000003 : TextConst 'ENU=XSD Files (*.xsd)|*.xsd;ENA=XSD Files (*.xsd)|*.xsd'; HTMFileType@1000000002 : TextConst 'ENU=HTM Files (*.htm)|*.htm;ENA=HTM Files (*.htm)|*.htm'; XSLTFileType@1000000001 : TextConst 'ENU=XSLT Files (*.xslt)|*.xslt;ENA=XSLT Files (*.xslt)|*.xslt'; TXTFileType@1000000000 : TextConst 'ENU=Text Files (*.txt)|*.txt;ENA=Text Files (*.txt)|*.txt'; PathHelper@1000000010 : DotNet "'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.IO.Path" RUNONCLIENT; ClientFileHelper@1000000009 : DotNet "'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.IO.File" RUNONCLIENT; ClientFileInfoHelper@1000000014 : DotNet "'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.IO.FileInfo" RUNONCLIENT; ServerFileHelper@1000000016 : DotNet "'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.IO.File"; DirectoryHelper@1000000011 : DotNet "'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.IO.Directory" RUNONCLIENT; XSLFileType@1000000015 : TextConst 'ENU=XSL Files (*.xsl)|*.xsl;ENA=XSLT Files (*.xslt)|*.xslt'; Text50000@1000000017 : TextConst 'ENU=Files (*.%1)|*.%1'; PROCEDURE BLOBImport@3(VAR BLOBRef@1000 : TEMPORARY Record 99008535;Name@1002 : Text[1024];CommonDialog@1003 : Boolean) : Text[1024]; VAR NVInStream@1001 : InStream; NVOutStream@1004 : OutStream; BEGIN IF NOT ISSERVICETIER THEN BEGIN IF CommonDialog THEN BEGIN Name := CommonDialogMgnt.OpenFileWithName(Name); IF STRPOS(Name,'*') > 0 THEN EXIT(''); END; BLOBRef.Blob.IMPORT(Name,FALSE); EXIT(Name); END ELSE BEGIN //IF UPLOADINTOSTREAM(Text007,'',Text009,Name,NVInStream) THEN BEGIN IF UPLOADINTOSTREAM(Text007,'',GetToFilterText('',Name),Name,NVInStream) THEN BEGIN BLOBRef.Blob.CREATEOUTSTREAM(NVOutStream); COPYSTREAM(NVOutStream,NVInStream); EXIT(Name); END; EXIT(''); END END; PROCEDURE BLOBExport@4(VAR BLOBRef@1002 : TEMPORARY Record 99008535;Name@1001 : Text[1024];CommonDialog@1000 : Boolean) : Text[1024]; VAR NVInStream@1003 : InStream; ToFile@1004 : Text[1024]; p@1005 : Integer; Path@1006 : Text[1024]; BEGIN IF NOT ISSERVICETIER THEN EXIT(BLOBRef.Blob.EXPORT(Name,CommonDialog)) ELSE BEGIN BLOBRef.Blob.CREATEINSTREAM(NVInStream); IF STRPOS(Name,'*') = 0 THEN ToFile := Name ELSE BEGIN ToFile := INSSTR(Name,Text001,1); ToFile := DELCHR(ToFile,'=','*'); END; WHILE STRPOS(ToFile,'\')<>0 DO BEGIN p := STRPOS(ToFile,'\'); ToFile := COPYSTR(ToFile, p+1); END; Path := 'C:\TEMP'; IF NOT CommonDialog THEN Path := Magicpath; //DOWNLOADFROMSTREAM(NVInStream,Text006,Path,Text009,ToFile); DOWNLOADFROMSTREAM(NVInStream,Text006,Path,GetToFilterText('',Name),ToFile); EXIT(ToFile); END END; PROCEDURE EnvironFileName@1(PassedString@1001 : Text[250];FileExtension@1002 : Text[250]) FileName : Text[1024]; BEGIN IF NOT ISSERVICETIER THEN BEGIN IF STRPOS(PassedString,'%1') = 0 THEN FileName := ENVIRON('TEMP') + PassedString + FileExtension ELSE FileName := STRSUBSTNO(ENVIRON('TEMP') + PassedString,FileExtension) END ELSE EXIT(ServerTempFileName(PassedString,FileExtension)); END; PROCEDURE ServerTempFileName@5(PassedString@1001 : Text[250];FileExtension@1002 : Text[250]) FileName : Text[1024]; VAR TempFile@1000 : File; BEGIN TempFile.CREATETEMPFILE; FileName := TempFile.NAME + '.' + FileExtension; TempFile.CLOSE; END; PROCEDURE ClientTempFileName@6(PassedString@1001 : Text[250];FileExtension@1002 : Text[250]) ClientFileName : Text[1024]; VAR TempFile@1004 : File; BEGIN IF ISSERVICETIER THEN BEGIN IF ClientTempPath = '' THEN BEGIN TempFile.CREATETEMPFILE; ClientFileName := TempFile.NAME + '.' + FileExtension; TempFile.CLOSE; TempFile.CREATE(ClientFileName); TempFile.CLOSE; ClientTempPath := Path(DownloadTempFile(ClientFileName)); END; ClientFileName := ClientTempPath + '\' + FORMAT(CREATEGUID) + '.' + FileExtension; END ELSE ClientFileName := ServerTempFileName(PassedString, FileExtension); END; PROCEDURE DownloadTempFile@7(ServerFileName@1001 : Text[1024]) : Text[1024]; VAR FileName@1102601003 : Text[1024]; Path@1102601004 : Text[1024]; BEGIN IF NOT ISSERVICETIER THEN EXIT(ServerFileName); FileName := ServerFileName; Path := Magicpath; DOWNLOAD(ServerFileName,'',Path,Text009,FileName); //DOWNLOAD(ServerFileName,'',Path,GetToFilterText('',FileName),FileName); EXIT(FileName); END; PROCEDURE Path@8(Filename@1102601000 : Text[1024]) Path : Text[1024]; BEGIN Filename := DELCHR(Filename,'<'); Path := Filename; WHILE STRPOS(Filename,'\')<>0 DO BEGIN Filename := COPYSTR(Filename, STRPOS(Filename,'\')+1); END; IF STRLEN(Path) > STRLEN(Filename) THEN EXIT(COPYSTR(Path,1,STRLEN(Path)-STRLEN(Filename))) ELSE EXIT(''); END; PROCEDURE Magicpath@9() : Text[1024]; BEGIN EXIT('<TEMP>'); // MAGIC PATH makes sure we don't get a prompt END; PROCEDURE UploadFileSilent@1000000012(ClientFilePath@1000000000 : Text[1024]) : Text[1024]; VAR ServerFileName@1000000001 : Text[1024]; TempClientFile@1000000002 : Text[1024]; FileName@1000000003 : Text[1024]; FileExtension@1000000004 : Text[1024]; BEGIN IF NOT ClientFileHelper.Exists(ClientFilePath) THEN ERROR(Text004,ClientFilePath); FileName := GetFileName(ClientFilePath); FileExtension := GetExtension(FileName); TempClientFile := ClientTempFileName(FileName,FileExtension); ClientFileHelper.Copy(ClientFilePath,TempClientFile,TRUE); ServerFileName := ServerTempFileName(FileName,FileExtension); IF NOT UPLOAD('',Magicpath,Text009,GetFileName(TempClientFile),ServerFileName) THEN ERROR(Text010,ClientFilePath); ClientFileHelper.Delete(TempClientFile); EXIT(ServerFileName); END; PROCEDURE DeleteClientFile@1000000004(FilePath@1000000000 : Text[1024]) : Boolean; BEGIN IF NOT ClientFileHelper.Exists(FilePath) THEN EXIT(FALSE); ClientFileHelper.Delete(FilePath); EXIT(TRUE); END; PROCEDURE DeleteServerFile@1000000011(FilePath@1000000000 : Text[1024]) : Boolean; BEGIN IF NOT ServerFileHelper.Exists(FilePath) THEN EXIT(FALSE); ServerFileHelper.Delete(FilePath); EXIT(TRUE); END; PROCEDURE CopyClientFile@1000000005(SourceFileName@1000000000 : Text[1024];DestFileName@1000000001 : Text[1024];OverWrite@1000000002 : Boolean) : Boolean; BEGIN ClientFileHelper.Copy(SourceFileName,DestFileName,OverWrite); END; PROCEDURE ClientFileExists@1000000002(FilePath@1000000000 : Text[1024]) : Boolean; BEGIN EXIT(ClientFileHelper.Exists(FilePath)); END; PROCEDURE ClientDirectoryExists@1000000006(DirectoryPath@1000000000 : Text[1024]) : Boolean; BEGIN EXIT(DirectoryHelper.Exists(DirectoryPath)); END; PROCEDURE ServerFileExists@1000000013(FilePath@1000000000 : Text[1024]) : Boolean; BEGIN EXIT(ServerFileHelper.Exists(FilePath)); END; PROCEDURE GetToFilterText@1000000000(FilterString@1000000000 : Text[1024];FileName@1000000001 : Text[1024]) : Text[1024]; VAR OutExt@1000000002 : Text[1024]; BEGIN IF FilterString <> '' THEN EXIT(FilterString); CASE UPPERCASE(GetExtension(FileName)) OF 'DOC': OutExt := WordFileType; 'DOCX': OutExt := Word2007FileType; 'XLS': OutExt := ExcelFileType; 'XLSX': OutExt := Excel2007FileType; 'XSLT': OutExt := XSLTFileType; 'XML': OutExt := XMLFileType; 'XSD': OutExt := XSDFileType; 'HTM': OutExt := HTMFileType; 'TXT': OutExt := TXTFileType; 'XSL': OutExt := XSLFileType; ELSE BEGIN OutExt := GetExtension(FileName); IF OutExt<>'' THEN OutExt := STRSUBSTNO(Text50000,OutExt); END; END; IF OutExt = '' THEN EXIT(Text009); EXIT(OutExt + '|' + Text009); // Also give the option of the general selection END; PROCEDURE GetExtension@1000000001(Name@1000000000 : Text[1024]) : Text[5]; VAR FileExtension@1000000001 : Text[1024]; BEGIN FileExtension := PathHelper.GetExtension(Name); IF FileExtension <> '' THEN FileExtension := DELCHR(FileExtension,'<','.'); EXIT(FileExtension); END; PROCEDURE GetFileName@1000000008(FilePath@1000000000 : Text[1024]) : Text[1024]; BEGIN EXIT(PathHelper.GetFileName(FilePath)); END; PROCEDURE GetFileSize@1000000010(FilePath@1000000000 : Text[1024]) : Decimal; BEGIN IF GetFileName(FilePath)='' THEN EXIT(0); ClientFileInfoHelper := ClientFileInfoHelper.FileInfo(FilePath); EXIT(ClientFileInfoHelper.Length); END; PROCEDURE GetDirectoryName@1000000009(FileName@1000000000 : Text[1024]) : Text[1024]; BEGIN IF FileName = '' THEN EXIT(FileName); FileName := DELCHR(FileName,'<'); EXIT(PathHelper.GetDirectoryName(FileName)); END; PROCEDURE OpenFileDialog@1000000014(WindowTitle@1000000000 : Text[1024];DefaultFileName@1000000001 : Text[1024];FilterString@1000000002 : Text[1024]) : Text[1024]; VAR OpenFileDialog@1000000003 : DotNet "'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.Windows.Forms.OpenFileDialog" RUNONCLIENT; DialagResult@1000000004 : DotNet "'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.Windows.Forms.DialogResult" RUNONCLIENT; BEGIN OpenFileDialog := OpenFileDialog.OpenFileDialog; OpenFileDialog.ShowReadOnly := FALSE; OpenFileDialog.FileName := GetFileName(DefaultFileName); OpenFileDialog.Title := WindowTitle; OpenFileDialog.Filter := GetToFilterText(FilterString,DefaultFileName); OpenFileDialog.InitialDirectory := GetDirectoryName(DefaultFileName); DialagResult := OpenFileDialog.ShowDialog; IF DialagResult.ToString() = 'OK' THEN EXIT(OpenFileDialog.FileName); EXIT(''); END; PROCEDURE SaveFileDialog@1000000015(WindowTitle@1000000002 : Text[1024];DefaultFileName@1000000001 : Text[1024];FilterString@1000000000 : Text[1024]) : Text[1024]; VAR SaveFileDialog@1000000003 : DotNet "'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.Windows.Forms.SaveFileDialog" RUNONCLIENT; DialagResult@1000000004 : DotNet "'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.Windows.Forms.DialogResult" RUNONCLIENT; BEGIN SaveFileDialog := SaveFileDialog.SaveFileDialog; SaveFileDialog.CheckPathExists := TRUE; SaveFileDialog.OverwritePrompt := TRUE; SaveFileDialog.FileName := GetFileName(DefaultFileName); SaveFileDialog.Title := WindowTitle; SaveFileDialog.Filter := GetToFilterText(FilterString,DefaultFileName); SaveFileDialog.InitialDirectory := GetDirectoryName(DefaultFileName); DialagResult := SaveFileDialog.ShowDialog; IF DialagResult.ToString() = 'OK' THEN EXIT(SaveFileDialog.FileName); EXIT(''); END; PROCEDURE OpenFolderDialog@1000000016(WindowTitle@1000000002 : Text[1024]) : Text[1024]; VAR FolderDialog@1000000003 : DotNet "'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.Windows.Forms.FolderBrowserDialog" RUNONCLIENT; DialagResult@1000000004 : DotNet "'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.Windows.Forms.DialogResult" RUNONCLIENT; txtFolder@1000000000 : Text[1024]; BEGIN FolderDialog := FolderDialog.FolderBrowserDialog(); FolderDialog.ShowNewFolderButton(TRUE); FolderDialog.ShowDialog; txtFolder := FolderDialog.SelectedPath; EXIT(txtFolder); END; PROCEDURE IsValidFileName@1000000003(FileName@1000000000 : Text[1024]) : Boolean; VAR String@1000000001 : DotNet "'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.String" RUNONCLIENT; String2@1000000002 : Code[10]; BEGIN EXIT(TRUE); IF FileName = '' THEN EXIT(FALSE); IF String.IndexOfAny(PathHelper.GetInvalidFileNameChars) <> -1 THEN EXIT(FALSE); //String := GetDirectoryName(FileName); String.Copy(GetDirectoryName(FileName)); IF String.IndexOfAny(PathHelper.GetInvalidPathChars) <> -1 THEN EXIT(FALSE); EXIT(TRUE); END; PROCEDURE ValidateFileNames@1000000007(ServerFileName@1000000000 : Text[1024];ClientFileName@1000000001 : Text[1024]); BEGIN IF NOT IsValidFileName(ServerFileName) THEN ERROR(Text011); IF NOT IsValidFileName(ClientFileName) THEN ERROR(Text012); END; BEGIN END. } }
How to use
txtFile := cuFileMgt.OpenFileDialog(‘File Select’,»,’*.xml’ <Depend on you>);
Regards,
Yukon
,
If you face the error «The system registry contains invalid file paths. Installation cannot proceed» when you try to upgrade Windows 10 to a newer version, continue reading below to fix the problem.
The Windows 10 Upgrade error «System registry contains invalid paths», usually occurs on laptops where Windows comes preinstalled by the manufacturer, or on computers that lack important updates required for the upgrade.
Problem in details: When trying to upgrade to Windows 10 using the Windows Upgrade Assistant, the Windows 10 upgrade fails with error «The system registry contains invalid file paths. Installation cannot proceed. This system image was applied without guaranteeing that drive-letter assignment would match across computers», and the system reverts to previous Windows 10 version with message: «Any changes made to the computer will be undone…»
How to FIX: System registry contains invalid paths in Windows 10 Update/Upgrade.
IMPORTANT: Before you continue to the method below, apply the following actions:
-
Install all available updates. (Start -> Settings -> Update and Security -> Check for Updates).
-
Download and install the latest Servicing Stack update according your Windows 10 version.
- (This solution is mentioned in the comments below): Disconnect the AC Power Adapter & if you can remove/disconnect the battery. Then hold down the Power button for at least 10-15seconds. Put the Battery back and connect the Power Adapter. Try to upgrade your PC.
Method 1. Delete Entries in System Variables.
Sometimes the error «System registry contains invalid paths», occurs because of invalid or duplicate entries in System Environment Variables. So, proceed as follows:
1. Right-click on your computer (This PC) icon on Explorer and choose Properties.
2. Click Advanced System Settings.
3. Click Environment variables.
4. At System variables select Path and click Edit.
5. Select and delete any other variables except the following:
-
%SystemRoot%\system32
-
%SystemRoot%
-
%SystemRoot%\System32\Wbem
-
%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\
-
%SYSTEMROOT%\System32\OpenSSH\
6. When done, click OK 3 times to apply the change and to close all windows.
6. Restart your PC.
7. Try to install the update.
Method 2. Delete Drive Letter on System Reserved Partition.
The second method to resolve the Windows 10 update error «System registry contains invalid paths», is to remove the drive letter from the «System Reserved» partition. To do that:
1. Press “Windows” + “R” keys to open the RUN window.
2. In “RUN” window “Open” box, type: diskmgmt.msc & Press Enter.
3. At Disk Management check if the System Reserved partition has a drive letter.* If so, right-click on it and select Change Drive Letters and Paths.
* Note: If the System Reserved partition does not have a drive letter, continue to next method.
4. Click Remove and OK.
5. Try to upgrade Windows 10.
Method 3. FIX Error «System registry contains invalid paths» by Repairing Windows 10 System Files.
1. Open Command Prompt as Administrator.
2. In command prompt give the following command and press Enter:
- DISM.exe /Online /Cleanup-image /Restorehealth
3. When the DISM operation is completed, type the following command and hit Enter:
- sfc /scannow
4. Now wait until the System File Checker repairs the Windows System Files.
5. When this done, restart your computer and try to install the Update.
Method 4. Update Windows from the Windows 10 ISO File .
The next method the Windows 10 upgrade error «System registry contains invalid paths» is to update Windows 10, from the Windows ISO file. To do that:
Step 1. Download Windows 10 in a ISO File.
1. Navigate to Windows 10 download page and click Download Tool now to download Media Creation Tool.
2. Run the downloaded file file and Accept the License Terms at the first screen.
3. Select Create installation media for another PC.
4. At ‘Language, architecture and edition’ screen click Next.
5. Select ISO file and click Next.
6. Save the ‘Windows.iso’ file to your desktop.
7. The Media Creation Tool will now begin to download the Windows 10 in an ISO format.
8. When the download is completed, close the Media Creation Tool.
Step 2. Run Disk Cleanup.
1. Right-click on drive C: and select Properties.
2. At General tab, click Disk Cleanup.
3. At ‘Disk Cleanup’ window, click Clean up system files.
4. In addition to the files selected for deletion, select the following and click OK to delete them.
-
Windows Update Cleanup
-
Windows upgrade log files
-
Temporary Windows installation files
5. Close the Disk Cleanup tool and continue to next step.
Step 3. Run DISM & SFC tools to repair Windows 10.
Now, follow the steps in Method 2 above and run the DISM & SFC tools to repair Windows 10.
Step 4. Update Windows 10 from the ISO file.
1. IMPORTANT: Disconnect your computer from the Internet, (or set it to «Airplane mode» if you own a laptop).
2. IMPORTANT: Disable or temporarily uninstall any third-party antivirus.
3. Then, right click on the «Windows.iso» file (on your desktop) and click Mount.
4. Double click at Setup application.
5. Click Next to install Windows 10.
6. Follow the rest onscreen instructions to update your system.
Method 5. Clean install Windows 10.
The last method, to fix the Windows 10 Upgrade issues, is to perform a clean installation of Windows 10 on your system.
Important: The clean Windows 10 installation means that all your files and settings will be lost during the installation process. So, proceed and backup all your important files and settings to another storage media before continue. (e.g. to an external USB drive).
To perform a clean Windows 10 installation read the instructions on this article: How to clean install Windows 10
That’s all folks! Did it work for you? Please leave a comment in the comment section below or even better: like and share this blog post in the social networks to help spread the word about this solution.
If this article was useful for you, please consider supporting us by making a donation. Even $1 can a make a huge difference for us.
- Author
- Recent Posts
Konstantinos is the founder and administrator of Repairwin.com. Since 1995 he works and provides IT support as a computer and network expert to individuals and large companies. He is specialized in solving problems related to Windows or other Microsoft products (Windows Server, Office, Microsoft 365, etc.).
Provide feedback
Saved searches
Use saved searches to filter your results more quickly
Sign up