Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is there a way to reduce the keyborad speed in Windows XP or 7? But for any keys pressed, not only when repeating keys (i.e., not auto repeat delay, nor auto repeat rate).

More details: I have an application on Terminal Services, and if the user types too fast, it seems that some of the keys pressed are missed and not readed on the remote session. I want to reduce the key reading time between one keystroke and the next one, in order to make all the key events read properly.

share|improve this question
It might be a good idea to describe the problem you are trying to solve. Since what you are trying to do (if i understand correctly) would limit the typing speed over all. The KeyboardDelay tries to address people releasing the keys too slowly. You seem to need something different for some reason. – TheUser1024 Jun 10 '13 at 14:24
[HKEY_CURRENT_USER\Control Panel\Keyboard]
KeyboardDelay REG_SZ 2

0 = 250 milliseconds; 1 = 500 milliseconds; 2 = 750 milliseconds; 3 = 1 sec

Force updarte registry:

rundll32.exe user32.dll, UpdatePerUserSystemParameters

Well here it is better to create a separate user profile for the Terminal Server and there is a registry key to change.

Terminal server profile path

Actually, it's quite strange. Perhaps you lack the capacity, if for example the same problems seen in notepad.exe, then the question in disk performance. Or should provide asynchronous input data in the application.

Command line, get user SID and Profile path:

powershell gci 'hklm:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList' -rec^| gp^| select ProfileImagePath, PSChildName ^| ft -Au -Pr @{n='SID';e={$_.PSChildName}},ProfileImagePath


SID                                            ProfileImagePath
---                                            ----------------
S-1-5-18                                       C:\WINNT64\system32\config\systemprofile
S-1-5-19                                       C:\Users\LocalService
S-1-5-20                                       C:\Users\NetworkService
S-1-5-21-2191659736-2261162383-3034376108-1142 C:\Users\UpdatusUser
S-1-5-21-2191659736-2261162383-3034376108-500  C:\Users\Administrator

Registry settings and control panel not set slow keyboard ... may be help ...

HKEY_CURRENT_USER\Control Panel\Accessibility\Keyboard Response
DelayBeforeAcceptance REG_SZ 2000

default 1000 <milliseconds>

Tuning the Response of Your Keyboard in Windows XP: How set keyboard slowly: PDF

share|improve this answer
Do I have to reboot the computer? – Guillermo Gutiérrez Jun 10 '13 at 14:20
@guillegr123 May be your need usb keyboard? Use force update registry: rundll32 user32.dll, UpdatePerUserSystemParameters – STTR Jun 10 '13 at 14:36
Thanks @STTR. Tried to change the value to 3 and update the registries, but it doesn't seem to delay the key event. – Guillermo Gutiérrez Jun 10 '13 at 14:59
@guillegr123 Your edit redistry in Terminal Server user profiles? And get list at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList ? – STTR Jun 10 '13 at 15:09
Actually, I'm testing it locally, in my machine, just for my user. I have not a testing environment, and I don't want to screw things up in the live server XD – Guillermo Gutiérrez Jun 10 '13 at 15:49
  1. Open Keyboard by clicking the Start button , clicking Control Panel, clicking Hardware and Sound, and then clicking Keyboard.

  2. Under Character repeat, move the Repeat rate slider to the left to make keyboard characters repeat more slowly, or to the right to make them repeat faster.

Reference from Microsoft.

share|improve this answer
Thanks @Tiago CA, but it seems to apply only for repeating characters. – Guillermo Gutiérrez Jun 10 '13 at 14:18

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .