>Why does the WH_Keyboard hook intercept all keys as capital letters? for
>example when I type "a" I get a 65 keycode (Virtual Key Code for A) in the
>wParam of the filter function though I should have got 97 (Virtual Key Code
>for a)
Virtual key codes represent keys, not letters. There is only one code
(65, 0x41) representing pressing the A key on the keyboard, whether it
will turn into a capital letter or not. The code 97 (0x61) is
VK_NUMPAD1, it has nothing to do with the A key. I think you're
confusing virtual key codes with ASCII character codes.
To differentiate between small and capital letters you'll have to
check the state of the Shift and Caps Lock keys, or listen to WM_CHAR
messages instead of keyboard messages.
Mattias

Signature
Mattias Sjögren [C# MVP] mattias @ mvps.org
http://www.msjogren.net/dotnet/ | http://www.dotnetinterop.com
Please reply only to the newsgroup.