467

After installing Windows 10 on my Surface Pro 3 it took my user name 'Jeremy' and created a user folder named C:\Users\jerem.

I want to rename the folder C:\Users\Jeremy. The procedure for Windows 8 does not work. There are a couple of reasons.

  1. OneDrive is now a fully integrated part of the OS, and it completely breaks. A find/replace in the registry seems to work, but it's hard to be confident in that approach.
  2. When the computer is rebooted, the TabletInputService writes a TextHarvester.dat file to the old user profile location (creating it if needed). This makes it impossible to keep the folder deleted. An old solution found online doesn't work. This issue also causes an error message to pop up every time the computer boots.
GollyJer
  • 7,560

11 Answers11

242

Microsoft has actually documented a very simple and clean way to rename a user profile folder.

EDIT Feb 2022: If you plan to use winget to manage your Windows installations at any point, note that Microsoft now warns against using this procedure under Windows 10 or later as it can stop winget working. Information about winget

There is no need to create a new user account, so all the settings associated with the existing user profile are preserved. And the only registry change required is to edit a single string value (the one that tells Windows the path of the user profile folder):

  1. Log in by using another administrative account.

Note. You may need to create a new Administrative account at first.

  1. Go to the C:\users\ folder and rename the subfolder with the original user name to the new user name.
  2. Go to the registry and modify the registry value ProfileImagePath to the new path name.
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\<User SID>\

That's it!

The procedure quoted above was provided by Microsoft (here) in relation to a perceived issue with Windows 7, and continues to work in Windows 10.


Notes

<User SID>

The ProfileList registry key contains a number of sub-keys. To find out which one to change, click on each sub-key and examine the values, to find the sub-key with the right ProfileImagePath:

enter image description here

For example, let's say we want to get rid of the space in a user profile folder name. So in step 2, we use File Explorer to navigate to C:\Users and rename the John Smith subfolder JohnSmith. And in step 3, we click on the <User SID> sub-keys until we find the one with ProfileImagePath C:\Users\John Smith, and change it to C:\Users\JohnSmith.

Administrative login

You may find you have to restart instead of just logging out and logging back in. Otherwise, when you try to rename the folder, Windows may report that it is being used by another program.

Environment variables (info)

Some applications create env vars with the user profile path fully expanded, so it's advisable to check for these and reboot if any needed fixing.

Reg Edit
  • 4,886
209

This can be done without folder renaming and messing with registry:

  1. Create a local account with the user name you wish.

    • Local account creation is well hidden; here is how to find it:
      Settings > Accounts > Family & Other users > Other users > Add someone else to this PC > The person I want to add doesn't have an email address > Add a user without Microsoft account
  2. Change account type to administrator (can skip if there is other administrator).

  3. Remove original Microsoft linked account

  4. Link local account to Microsoft account if you wish

voldemarz
  • 2,281
79

While not a direct answer to the question, a symbolic link can be a risk-free solution if the problem is not just aesthetics, but that restored or legacy configuration files or links refer to the user directory.

  1. Open an elevated command prompt
  2. Change to the user directory
  3. Create a directory junction targeting the real name of the user directory

e.g.,

C:
CD\Users
MKLINK /J Jeremy jerem

This enables you to use c:\Users\Jeremy\..... to refer to parts of your profile.

Kitiara
  • 891
54

I had the same problem and I have solved it as follows (using information that I found on a few other websites):

  1. Just to be safe, create a restore point. Open the Control Center, type in System Restore and click on Create System Restore Point. Select the C: Drive and click on Create.
  2. Click on the Windows Button (at the bottom left), type regedit and click on Execute command.
  3. Confirm the UAC dialog by clicking Yes.
  4. Make a backup of the prior registry by clicking File > Export.
  5. Go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList. There you can find a few subfolders (starting with 'S-1-5-'). Search for the folder that contains the path (that you want to change) in the registry key named ProfileImagePath. (Example from the question: search for the value 'C:\Users\jerem').
  6. If you have found it, double-click on it and change the path. (Following the original question, you would now change the value to 'C:\Users\Jeremy').
  7. Close the Registry Editor window.
  8. Click on the Windows Button (at the bottom left) again and type netplwiz and click on Execute command.
  9. Make sure that the checkbox 'Users have to enter username and password' is checked. Select the user (for whom you want to change the path) from the list and click on Properties.
  10. Change the user name in the new window. (Following the original question, you would now change the user name to 'Jeremy'). You can also change the full name here, if you wish (but in my case the correct name has already been entered). I suppose that you can not leave the full name field empty. Close the window by clicking OK.
  11. Close the other remaining opened windows also by clicking OK.
  12. Restart the system.
  13. Start Windows 10 again and try to login. This will fail (because of the changed path) and you will automatically be logged in with a temporary user account (which will take a bit of time). However, you can now change the name of the folder using the Windows Explorer (following the example above, you would now rename the folder jerem to Jeremy).
    Note: alternatively, you can boot into a second operating system (if you have one installed) or use a Live CD operating system to change the folder name.

UPDATE: Thanks to user @lmiguelvargasf for informing me about an issue with my solution! I thought that the system would be a bit more intelligent in updating the references in the registry, but it is not! Therefore you should start the Registry Editor again (as in step 2) and make a backup by clicking File > Export. Then click on Edit > Search (or Find...), type in the old path (in the example it would have been C:\Users\jerem) and search for keys, values and data. Replace all references containing the old path (C:\Users\jerem) with the new path (C:\Users\Jeremy). A click on the key F3 searches for the next reference. Repeat that until you don't find any references to the old path. Even with a relatively fresh installation on Windows 10, you might have to update about 100 entries (especially OneDrive and Edge have quite a lot of caching paths in the registry). And also some additionally installed programs might have created registry entries!

Finally, restart the system again and start Windows 10. The first login could take quite a while, but everything should now work fine again and the path of the user directory should now be changed! If everything works fine, you can now delete the original folder (the folder named jerem, using the example of the question).

INFO: I am working on a German system. I tried to translate the bullet points correctly, but it is very likely that they might be named a bit different!

DISCLAIMER: This solution is working on my laptop after upgrading from Windows 8.1 (64-bit) to Windows 10 (64-bit). However, I cannot guarantee that this solution might also work for others with other configurations. If you follow the solution provided above, you are doing everything at your own risk!

traintes
  • 657
30
  1. To access the Advanced User Accounts panel type netplwiz in Search the web and Windows box next to your Windows button then click or tap on Netplwiz (Windows application).

  2. In the Advanced User Accounts panel, select the user you want to modify and click Properties

  3. In the properties window for the user, enter the new user name and click OK.

  4. Restart for the changes to take effect.

Source: http://www.opentechguides.com/how-to/article/windows-10/43/win10-change-account.html

Jp_
  • 447
2

There is a much faster and easier way. (As usual, Windows NT got it right, but Microsoft just keeps making trivial UI tasks harder and harder as they try to cater to the fringe tablet market. Luckily the old apps are still available.)

Open the Start menu, type comp and select Computer Management, expand Local Users and Groups, right-click Users to a new local account there, then click Groups and open the Administrators group and add the new account.

Log off, log in with the new account. The account name will be used to create a new folder in Users. You can copy whatever you need from the old user folder, then delete the old user account from the same app (or that "Family" thing in Settings). Re-link to your MS account if you wish.

2

I had the same problem and this worked. Thanks to tenforums website!

https://www.tenforums.com/tutorials/89060-change-name-user-profile-folder-windows-10-a.html

Summary:

1) in a command window: wmic useraccount get name,SID

get the SID for the user.

2) Open registry using regedit command.

search for

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\

edit local user name to new name.

3) Important: after editing the registry you must restart your computer otherwise the rename will give the same error.

4) Now you can rename the directory (folder).

likejudo
  • 361
  • 2
  • 3
  • 9
1

The other answers are quite useful but I'd like to add that many many things including the ability to uninstall any programs that were locally installed will be broken until you properly migrate all your registry keys and values.

I used Registry Finder, first replacing "Users\oldusername" in keys and values, and then replacing non-binary data fields. There were some errors but it mostly worked. I tried to review what was being edited, but there are thousands of entries so I had to skim. They fortunately group up so that you can skip similar entries when reviewing.

Manishearth
  • 1,206
1

I can't comment yet... I just wanted to add that I followed the steps from traintes' solution, but if you want to avoid getting the error when restarting the pc, you can follow these steps before restarting:

  1. activate the Administrator account from command prompt (with admin rights) right clicking on the windows logo and selecting the option and typing net users Administrator /active:yes
  2. reboot the computer in Advanced Startup clicking on Start > Power > (shift +) restart
  3. Go to Troubleshoot > Advanced Options > Command Prompt
  4. Select the Administrator account
  5. Navigate to C:\Users typing c: then cd users
  6. Type rename oldname newname using your current folder name instead of oldname and the desired folder name instead of newname

exit and reboot... easy peasy...

SherylHohman
  • 1,193
  • 9
  • 19
-1

Extending this answer but with powershell.

$sid = (Get-LocalUser -Name «username»).sid;
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$sid" -Name profileimagepath -Value «new directory»;

Rename-Item «old directory» «new directory»;

Ben Thul
  • 149
-1

I managed to get that Windows 8 tutorial to work for myself by logging into the second admin account in safe mode (I used "Safe Mode With Networking" myself; the precise methods used to get your version of Windows 10 into Safe Mode may be different). Safe Mode prevents OneDrive from loading, among other things.

After renaming the directory, you'll need to search and replace "C:\Users\jerem" to "C:\Users\Jeremy" (in my case, it was "C:\Users\Kimiko" to "C:\Users\Muffin") in Regedit while you're logged into the secondary account, and then you'll need to do it again once you've logged back into your main account so you can get everything in HKEY_CURRENT_USER as well. This won't catch everything in files, obviously; when I rebooted after doing the second search and replace, OneDrive complained that its home directory had been deleted, among other things. Everything seemed to work after that, though.