C# Simulate Key Press
Asked Answered
A

3

3

I was looking for a way to simulate pressing the right Ctrl key in C#, it must be the right one. I know this can be done for the left one but I couldn't find anything on the right one. It is so I can simulate the key press for the manually triggered bsod.

Thanks

Arnaud answered 5/9, 2011 at 12:9 Comment(4)
...manually triggered bsod. Wait...what?Fructuous
wikihow.com/Force-a-Blue-Screen-in-WindowsArnaud
I don't know if that's awesome, stupid or just a left-over debug key (most likely the last one)...anyway, nice to know, thanks.Fructuous
I'm going to enable this on my co-worker's PC and use AutoHotKey to emulate the key-presses when he types his name. Muahahahahahaha.Cheke
T
17

You can use keybd_event event to simulate right Ctrl key press.

[DllImport("user32.dll", SetLastError = true)]
static extern void keybd_event(byte bVk, byte bScan, int dwFlags, int dwExtraInfo); 

public const int KEYEVENTF_EXTENDEDKEY = 0x0001; //Key down flag
public const int KEYEVENTF_KEYUP = 0x0002; //Key up flag
public const int VK_RCONTROL = 0xA3; //Right Control key code

Usage:

keybd_event(VK_RCONTROL, 0, KEYEVENTF_EXTENDEDKEY, 0);
keybd_event(VK_RCONTROL, 0, KEYEVENTF_KEYUP, 0); 

For other key simulation here is virtual key codes list.

Trimerous answered 5/9, 2011 at 12:22 Comment(0)
C
3

You might have some luck with the Windows Input Simulator http://inputsimulator.codeplex.com/

Churl answered 5/9, 2011 at 12:53 Comment(0)
E
1

If you are usign AutoHotKey try looking here. with {RControl} you should get what you want

Update: For .NET try looking at this for more info, but AFAIK you can't send right Ctrl key. guess you must use win32 to accomplish it

Expert answered 5/9, 2011 at 12:32 Comment(1)
Thanks for the link but I was looking to do it from a vs app with C#, is this possible? If not I will look at the AutoHotKey, thanks.Arnaud

© 2022 - 2024 — McMap. All rights reserved.