Du skal kigge på om shift-tasten er trykket ned, hvilket kan gøres ved at tjekke GetKeyState(VK_SHIFT);
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/keyboardinput/keyboardinputreference/keyboardinputfunctions/getkeystate.aspVK_SHIFT gælder for begge shift-taster.
For at tjekke om shift holdes nede, kan du gøre følgende i din WindowProc:
char a;
case WM_KEYDOWN:
if (wParam >= 'A' && wParam <= 'z')
{
if (!(GetKeyState(VK_SHIFT) << 15)) // Hvis shift ikke holdes nede
a = wParam + 31; // a er det lille bogstav
else
a = wParam; // a er det store bogstav
}
break;