Problème : HOOK - Conversion de code virtuel de touche
Bonjour,
J'utilise un hook que j'ai récupéré.
Lorsque j'utilise ce dernier j'ai un problème lorsque je convertie le code renvoyé par ce dernier.
Ma fonction de conversion ne tient pas compte des touches tels que Shift, à savoir lorsque je tappe une majuscule celle ci n'est pas récupéré.
Voici le code qui me permet de convertir les code virtuels, pourriez vous me dire où est le problème ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| function GetCharFromVKey(vkey: Word): string;
var
keystate: TKeyboardState;
retcode: Integer;
begin
Win32Check(GetKeyboardState(keystate));
SetLength(Result, 2) ;
retcode := ToAscii(vkey,
MapVirtualKey(vkey, 0),
keystate, @Result[1],
0) ;
case retcode of
0: Result := '';
1: SetLength(Result, 1);
2: ;
else
Result := '';
end;
end; |