Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

When I try to add Persian keyboard layout on my Windows 7 x64, the keyboard doesn't show up in the language bar. For example, when I add English, Arabic, and Persian keyboard layouts as shown in the following figure,

enter image description here

the only available languages will be English and Arabic:

enter image description here

The properties for the Persian layout shows a blank keyboard:

enter image description here

I had installed a Persian accounting software with probably caused the problem. I've tried sfc /scannow to revert changes to system files, if any, but sfc didn't find any issues.

share|improve this question
    
Maybe you should install the locales separately? –  Eugene S May 3 '12 at 15:19
    
@EugeneS: No. The Persian locale along many other languages is a part of Windows 7. I have no problem with installing Persian locale on other PCs running Windows 7. –  Isaac May 4 '12 at 20:27

1 Answer 1

I had such an experience with installing custom keyboard layout using setup programs like "XP Farsi Keyboard".

This setup make similar dll to Kbdfa.dll in System32 folder: kbdfapsoft.dll

I resolve the problem using:

1- Search Windows folder for kbdfa.dll. I found these:

32 bit dlls:(6.50 KB)
 C:\Windows\System32\kbdfa.dll
 C:\Windows\winsxs\amd64_microsoft-windows-i..l-keyboard-00000429_31bf3856ad364e35_6.1.7600.16385_none_46c321d27ba117ab\kbdfa.dll

64 bit dlls:(6.00 KB)
 C:\Windows\SysWOW64\kbdfa.dll
 C:\Windows\winsxs\wow64_microsoft-windows-i..l-keyboard-00000429_31bf3856ad364e35_6.1.7600.16385_none_5117cc24b001d9a6\kbdfa.dll

2- Copy and paste kbdfa32.dll from winsxs folder to appropriate system32 or SysWOW64 Folders.

3- If you have files like kbdfa*.dll (ie: kbdfapsoft.dll) , Copy and replace appropriate kbdfa.dll to its location, ususally system32 folder with the same name(ie: kbdfapsoft.dll).

4- Copy and paste 32 bit dlls (kbdfa.dll and if you have kbdfa*.dll) into system32\dllcache

5- Remove Perian Keyboard and add it againg. And its done.

It is better Idea to use standard windows layout.You can use ctrl+shift+2 to type zwnj (Zero Width None Joiner).

Some useful links:

The Microsoft Keyboard Layout Creator

traylayout-1.2.zip for windows xp to mimic enhanced kbdfa.dll without actual replace of system files.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.