Fixing Japanese and Chinese IME problem [EN]

From my understanding the “Japanese IME is not ready yet.” (or Chinese) error started appearing sometime around 1903 was released. There are tons of articles and questions on internet regarding this issue with not many working solutions. Especially for restricted corporate environment. We have started seeing reports about this error while pushing 20H2 version. But it seems such problems were also observed after 1903 update (or maybe even earlier) and some IT staff was “fixing” it by copying IME files from older version into new essentially replacing it. This doesn’t work with latest Windows 10 versions. Not to say this is not a pretty solution anyway. I had to involve Microsoft support recently to tackle this and below are my findings and kind of a solution for this.

First, it seems that this is happening because Microsoft is not including all the necessary files to install a new language pack on the system. Which is logical. If you installed EN US version, why should it have Japanese or Chinese language pack files? Some big global companies might have one golden English image and use it in all regions, but in some regions people need other languages. So they go to Languages menu, click Add and search for a language. Then Windows downloads all the files from Microsoft servers. Well, it should. But it couldn’t if your network is restricted. I don’t have details on what is being blocked exactly that causes that issue. Microsoft support technician thought this is because we block All Windows update features (which allows users to download optional updates or install latest Feature update) or block Dual Scan. We actually block them in group policies. First one is obviously, so the users don’t install not approved stuff. Second one i don’t know why. Maybe so preview/test updates are not being downloaded or to save bandwidth. I don’t have historic information on decisions made for these policies many years ago. But i have tried to remove this blocks on a test PC and it didn’t help. So, i think there is more to it and there are some blocks on network/firewall level. Also, according to Microsoft since 1709 version there is no way to push Feature on Demand packages via WSUS. Have to download them directly from Microsoft. In the end i have asked if there is a way to install all the necessary files offline and i have received the instructions. I feel that maybe not all the files are really necessary to fix this IME error, but i just did everything to the letter. When you install additional language pack, normally it should show 5 icons above the language entry (spelling, OCR, inking, etc.). When we install Japanese or Chinese language regularly, it only has 2 icons and then IME doesn’t work correctly. Interestingly enough, i also see only two icons for some languages on my home PC, which doesn’t have any firewall restrictions. It can download updates though. Same at work, updates can be reached from Microsoft servers, but for some reason not all the language files. Some of them probably come from different service.

Solution is based on this MS article. In there you will find links to a bunch of ISOs for different language files. But it seems that only two first ones are needed: Language ISO and FOD Disk 1 ISO. I have downloaded ISOs for 2004-21H1 versions. Below is example for Japanese. You can do the same for other languages:

From 19041.1.191206-1406.vb_release_CLIENTLANGPACKDVD_OEM_MULTI.iso i took:

  • LocalExperiencePack\ja-jp\LanguageExperiencePack.ja-jp.Neutral.appx
  • LocalExperiencePack\ja-jp\License.xml
  • x64\langpacks\Microsoft-Windows-Client-Language-Pack_x64_ja-jp.cab

From 19041.1.191206-1406.vb_release_amd64fre_FOD-PACKAGES_OEM_PT1_amd64fre_MULTI.iso took all the rest of cab files for particular language, which are mentioned in the PowerShell script below.

Put all the files in one folder along with PowerShell script. Its code is also provided in the article, but i made it simpler by just putting everything in one folder and makeing a zip from it. And this is just a bunch of install commands for every cab file. Which makes all required files that usually have to be downloaded to be available on the system. The code of install-script.ps1:

Add-AppProvisionedPackage -Online -PackagePath LanguageExperiencePack.ja-jp.Neutral.appx -LicensePath License.xml
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-Client-Language-Pack_x64_ja-jp.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-LanguageFeatures-Basic-ja-jp-Package~31bf3856ad364e35~amd64~~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-LanguageFeatures-Handwriting-ja-jp-Package~31bf3856ad364e35~amd64~~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-LanguageFeatures-OCR-ja-jp-Package~31bf3856ad364e35~amd64~~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-LanguageFeatures-Speech-ja-jp-Package~31bf3856ad364e35~amd64~~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-LanguageFeatures-TextToSpeech-ja-jp-Package~31bf3856ad364e35~amd64~~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-NetFx3-OnDemand-Package~31bf3856ad364e35~amd64~ja-jp~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-InternetExplorer-Optional-Package~31bf3856ad364e35~amd64~ja-jp~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~amd64~ja-jp~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-Notepad-FoD-Package~31bf3856ad364e35~amd64~ja-jp~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-PowerShell-ISE-FOD-Package~31bf3856ad364e35~amd64~ja-jp~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-Printing-WFS-FoD-Package~31bf3856ad364e35~amd64~ja-jp~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-StepsRecorder-Package~31bf3856ad364e35~amd64~ja-jp~.cab
Add-WindowsPackage -Online -PackagePath Microsoft-Windows-WordPad-FoD-Package~31bf3856ad364e35~amd64~ja-jp~.cab
$LanguageList = Get-WinUserLanguageList
$LanguageList.Add(“ja-jp”)
Set-WinUserLanguageList $LanguageList -force

So, the steps are:

  • Remove already added language in Settings > Time & Language > Language
  • Unpack language zip
  • Open PowerShell with admin and go inside the unpacked folder
  • Set execution policy to allow unsigned script (might work without this): Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
    use S (Suspend) option
  • Run .\install-script.ps1
  • Wait until it installs all the cab files
  • Go to Settings > Time & Language > Language and add the required language
  • It should appear immediately on the list with all 5 icons above it

After installing it this way the problem with IME not being ready goes away. Although we had one case when the problem went away on its own somehow. I am guessing maybe PC got updated to 20H2 and as user already had Japanese language added before with 1909 it installed all the cab files from the feature update or something along these lines.

Leave a Reply

Your email address will not be published.