KeyTest3AK – a tool to look at keyboard codes

Updated 7. june 2010: added source code and binaries for KeyTest3AK with prechecked WM_KEYDOWN, WM_KEY_UP, WM_CHAR and option to save a log.

[Download not found]


I just finished my KeyTest3AK. You can take alook at what keycodes produced by the keys on your handheld. Additionally there are options to test what happens, if you use GXOpenInput(), RegisterHotKeys(), UnregisterFunc1 and AllKeys().

After you started the app, simply press the keys to see the codes they produce.

Download source code and the executables [Download not found]

Here is MS answer on KeyTest: The MS blog has all the background on KeyInput but looks like a clone of keytest3ak


  1. Omar says:

    Hi ,

    Thanks for sharing all this with us!!

    imp testing a problem with one device , where basically if I press the keys so quickly some of output are missing , I suspected that it may just that I’m not releasing the key properly , is it possible that your application log the key press output in a txt file for example , I’m so bad with development ….
    Do you have any idea what could be the problem with my device? as in example if I press 1 two times followed by 7 two times and then by 9 two times for example doing this in loop and quick after 15 seconds I see that some characters are missing……
    Thanks in advance for your help

  2. admin says:

    Hi Omar

    I have a version of Keytest3AK with logging available. I will upload it the next days.

    About your problem: Windows does not loose keypresses, I have never heard of this. BUT, if the application is for example Remote Desktop Mobile RDM), I know that keypresses will get be lost, if they are to fast. But this happens between the client and the server. Locally, no keypress should be lost. With RDM we will see keystrokes are lost, if the delay between key messages is below 1ms or so.
    Depending on the way an app handles keypresses, an app might loose keystrokes. Some apps only react on WM_KEYUP, some only use WM_CHAR. Depending on the way the app handles these, it may loose keystrokes. But windows itself will not loose any message.

    What is the app you are testing against?

    BTW: did you already mention your problem at or at

  3. Omar says:

    hello !!
    Many thanks for your reply ,no I didn’t report it into but this good idea then i will do so…. thanks for the idea !!
    The app is locally on the device for example wordmobile or note . I hear and distinguish the clicks of the keypresses ( let say 4 clicks) but i have 3 chars as output , this happen only when i press different keys quickly and in sequence , so I’m not sure if this is just because the way I’m pressing the keys is wrong (not fully releasing the key) and even i hear two clicks for example the key has been pressed only once in reality or if this because the keyboard drivers are ignoring the key press events or the application at that moment lost the focus so the keyboard message has been sent somewhere else.
    I really don’t know….
    is there any way to know if the keys have been pressed correctly or not? especially in situation of pressing 15chars in 5 seconds or less ….
    many thanks !!

  4. […] you use UnregisterFunc1, you can check the Function Keys using a tool like KeyTest3AK. It will show the keydown and keyup values of keys and shows what happens if you use […]

Leave a Reply