How to setup a standard Persian keyboard for Windows 2000

This is a mini-HOWTO for setting up standard Persian (Farsi) keyboard layout, ISIRI 2901:1994, on Windows 2000 systems. This keyboard layout is the national Iranian standard, and is the best Persian keyboard layout the FarsiWeb project knows about. It has one of the shortest learning curves for inexperienced users, and has a complete repertoire of characters used in Persian without using Control and Alt keys.

ISIRI 2900 is much much easier to use than Microsoft's Farsi keyboard, has Persian digits instead of European ones, and provides an easy mechanism for entering Pseudo Space using Shift+Space, among other features. (Microsoft's Windows team is aware of this standard layout. According to our contacts with Microsoft, they may adopt this layout in a later version of Windows.)

Note: We do not know of any possible side effects, but since you are replacing a Windows driver, this might create problems for your system. If you are not an experienced computer user, do this on a test installation first to make sure you understand the procedure. Also please note that this will not work on Windows 95, 98 or ME.

  1. Make sure that you have the Microsoft Farsi Keyboard in your system, running properly.
  2. Backup the following file from your system. You will need to replace it if the system did not work properly: \WINNT\system32\kbdfa.dll
  3. Download FarsiWeb's version of kbdfa.dll.
  4. Login to your system as an "administrator".
  5. From the "Start" menu, select "Run...". Type "regedit".
  6. In the left panel, expand "My Computer\HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
    . In the right panel, double-click on "SFCDisable" and change its value from "0" to "1". Close regedit.
  7. This step is tricky, read it completely before you start it:
    From the "Start" menu, select "Run...". Type "sfc  /purgecache". A dialog box may open, asking you to insert your Windows 2000 installation CD. Do not do that. Select "Cancel" instead. In the next dialog, press "Yes". Then close the "Windows File Protection" program immediately by either closing the window or pressing it's "Cancel" button. On some systems, the CD requesting dialog may not appear, only the "Windows File Protection" program will start. If that's the case with your system, close it after about 10 seconds of running.
  8. Restart your system and login as an "administrator".
  9. Copy the FarsiWeb's version of "kbdfa.dll" over "\WINNT\system32\kbdfa.dll". A "Windows File Protection" dialog will appear again. Press "Cancel" again. Select "Yes" in the next dialog box (telling that you want to keep the unrecognized file versions).
  10. Restart the computer again.
  11. To see if the keyboard is running properly, open "Start | Programs | Accessories | Accessiblity | On-Screen Keyboard". Now switch the keyboard to "Farsi". If you see Persian digits instead of European ones, the keyboard is properly installed. Congratulations!

Problems? contact the FarsiWeb Project Group at

Back to The FarsiWeb Project homepage.