I know SendKeys can emulate typing and send individual keystrokes but I’m looking for a way to emulate holding down a key. My goal is an app that acts as a joypad for a windowed game. Imagine holding a tablet PC and having arrow keys and basic buttons on either side of the screen and pressing them emulates keyboard presses which a game then receives. That’s my goal.
When a finger presses down on a button, I want to translate that to pressing down on a keyboard key. Upon releasing that button, I want to release that key. I know this’ll probably require some low level code and I’m ok with that.
NOTE: I do NOT want to emulate these events in my own app, but system wide. I’m writing this for an XNA game of mine and it’s not listening for direct, focus key events, it’s checking the state of the keyboard, (as I assume most games do) and responding to that. I want my app to trick my game into thinking a key is held down at the proper times.
If you want to emulate it system-wide, you can use
SendInputfrom Core.dll. There are more detailed information on how to do that here.However, it is very rare, that you will actually need that. Instead, you should try to manipulate with only your own app (it seems more like that is what you need in this case). You can simply just make variables for all the keys, you want to read, and then read those variables from both keyboard AND tablet.
EDIT
oh, this link will probably be better…