Hola de nuevo, estoy un poco perdido con el código que has puesto, en que variable puede venir el espacio, como se acepta, por teclado?
Que tipo son las variable que tienes en ese código, etc ...
si no recuerdo mal GetAsyncKeyState se usa para saber si está pulsada alguna tecla especial como Ctrl, Alt, etc.
Con lo que has puesto no me entero, lo siento.