Starting with Windows 10 Version 1803, the background task LPRemove
deletes the unused language packs installed on the system. This recently created an issue for one my reader. Actually, he tried to add Japanese language manually but after installing the language, it is missing from Settings > Time & Language > Language. Also, once he rebooted the machine, the installed language was removed.
So how to prevent this issue? Well, by configuring some settings, you can get rid of this problem. If you’re on Windows 10 V1803 or V1809, you can instead force Windows to set your manually installed language as preferred language. For Windows 10 V1903 or later, you can try below mentioned methods.
Page Contents
Prevent Windows 10 From Deleting Unused Language Packs
Method 1 – Using Group Policy
1. Open GPO Editor by running gpedit.msc
in Windows client edition and by using gpmc.msc
command in Windows Server.
2. Next, open the GPO Editor window, navigate here:
Computer Configuration > Administrative Templates > Control Panel > Regional and Language Options
Note: You should have Policies folder after Computer Configuration, if you’re on Windows Server.
3. In the corresponding right pane of Regional and Language Options, look for the policy setting named Block clean-up of unused language packs. Double click on the policy to modify its status:
4. Finally, set the policy status to Enabled which means Windows will not remove any installed language, even a it is not used by any user on the system. Click OK, Apply.
5. Close GPO Editor and update the GP engine or reboot the system to make changes effective.
Method 2 – Using Registry
1. Press + R and type regedit
in Run dialog box to open Registry Editor. Click OK.
2. In Registry Editor window, go to following registry key:
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Control Panel\International
3. Create a registry DWORD (REG_DWORD) at this location and name it as BlockCleanupOfUnusedPreinstalledLangPacks
. Then set its Value data to 1 so Windows 10 won’t delete unused language packs.
4. Close Registry Editor and reboot to make changes effective.
Hope this helps!
5 Comments
Add your comment
Hello Kapil, the time we upgraded from 1809 to 1909, we added this reg-key in our task sequence, because without this key the problem with the disappearing language-packs happened.
But : after a few months, this key was deleted ( maybe MS-Updates or else, nobody knows ) and the same happened as before. All the installed language-packs are gone. Do you know what is triggering this ?
Greetings from Hamburg-Germany
Bernd
^^ AFAIK, in Version 1803 or later, a background cleanup task removes the language packs, if they are not actively used. This might be the cause.
Now its been about 6 months but Im applying the registryline above and also
$A = Get-WinUserLanguageList
$A.Add(“en-us”)
Set-WinUserLanguageList $A -force
$A = Get-WinUserLanguageList
$A.Add(“sv-se”)
Set-WinUserLanguageList $A -force
$A = Get-WinUserLanguageList
$A.Add(“zh-tw”)
Set-WinUserLanguageList $A -force
This is done after I run cleanmgr, clean GPO and clean WSUS stuff. I bet GPO Clean clear this value so just make sure system is updated
I run this reg add in MDT TaskSequence and code below from a PS-file after updating Windows and clearing WSUS Cache, GPO Cache and cleanmgr, this works when I sysprep the machine but I have to verify multiple times also
Save this as Language.ps1 or whatever you want
$A = Get-WinUserLanguageList
$A.Add(“sv-se”)
Set-WinUserLanguageList $A -force
^^ Thanks for your input!