C# 模拟远程桌面会话的特殊键输入?

C# 模拟远程桌面会话的特殊键输入?,c#,rdp,C#,Rdp,我试图模拟从chsarp应用程序到远程桌面会话的输入。 任何钥匙都可以用,但我不能用特殊的钥匙。 特别是我正在尝试CTRL+A。 我曾经尝试过InputSimulator,但即使鼠标和文本输入确实有效,它也不起作用。 所以我尝试使用keybd_event() 此代码将键入“q”…可能是azerty/werty问题,但我也尝试了使用“v”(而不是“a”),它键入“v”而不是ctr+v:(( 谢谢这有帮助吗?是的,谢谢我看到了。但是有一个问题(无法释放特殊钥匙)一直没有解决,所以我希望有一个干净的方

我试图模拟从chsarp应用程序到远程桌面会话的输入。 任何钥匙都可以用,但我不能用特殊的钥匙。 特别是我正在尝试CTRL+A。 我曾经尝试过InputSimulator,但即使鼠标和文本输入确实有效,它也不起作用。 所以我尝试使用keybd_event()

此代码将键入“q”…可能是azerty/werty问题,但我也尝试了使用“v”(而不是“a”),它键入“v”而不是ctr+v:((


谢谢

这有帮助吗?是的,谢谢我看到了。但是有一个问题(无法释放特殊钥匙)一直没有解决,所以我希望有一个干净的方法。。。
public const int KEYEVENTF_EXTENDEDKEY = 0x0001; //Key down flag
public const int KEYEVENTF_KEYUP = 0x0002; //Key up flag
public const int VK_LCONTROL = 0xA2; //Left Control key code
public const int A = 0x41; //A key code
public const int C = 0x43; //C key code
public const int V = 0x56; // V key code
keybd_event(0x11, 0x9d, 0, 0); // Ctrl Press
keybd_event(0x41, 0x9e, 0, 0); // ‘A’ Press
keybd_event(0x41, 0x9e, KEYEVENTF_KEYUP, 0); // ‘A’ Release
keybd_event(0x11, 0x9d, KEYEVENTF_KEYUP, 0); // Ctrl Release