c ++ - Hvordan sender jeg nøgler med en global tastaturkrog?

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg forsøger at sende nøgler til en applikation, der ikke reagerer på nogen af ​​de API'er, som jeg hidtil har brugt (SendInput (), PostMessage (), SendMessage () og andre). Men jeg testede Windows 'On-Screen Keyboard Utility og trykte på de nøgler, jeg havde brug for, og applikationen modtog disse nøgler nemt.


Hvis jeg forstår rigtigt, bruger tastaturværktøjet globale tastaturkroge til at sende nøglerne, så jeg interesserede mig for, hvordan jeg også kunne gøre det. Jeg har forsøgt at finde eksempler på, hvordan dette kan gøres på google, men er kommet uden resultater .


Tak.

Bedste reference


Kroge bruges til at opfange begivenhederne, ikke at sende ny begivenhed. Så hvad du spørger, er umuligt med kroge. SendInput er vejen at gå. Du har nok gjort noget forkert, så det er bedre, hvis du sender din kode, der ikke virker og fejler, hvad der gik galt.

Andre referencer 1


Jeg løste det. Jeg sendte nøgler til en DirectX-applikation. Det viste sig, at jeg måtte sende DirectX scanningskoder i stedet for regelmæssige VK\_KEY 's.


En liste over scanningskoder findes på: http://www.gamespp.com/directx/directInputKeyboardScanCodes.html[2]


Brug disse med SendInput () og alt fungerede godt.


Tak for hjælpen også.


Skål.