c# keybd_event 如何发送组合键

655Z技术栈 C#编程 2025年07月16日 9

要发送组合键,可以使用keybd_event函数来模拟键盘按键操作。keybd_event函数接受四个参数:按键码、扫描码、按键状态和附加标志。

以下是一个示例代码,演示如何发送Ctrl+C组合键:

using System; using System.Runtime.InteropServices; class Program { [DllImport("user32.dll")] public static extern void keybd_event(byte bVk, byte bScan, uint dwFlags, UIntPtr dwExtraInfo); const int KEYEVENTF_KEYDOWN = 0x0; const int KEYEVENTF_KEYUP = 0x2; const byte VK_CONTROL = 0x11; const byte VK_C = 0x43; static void Main() { // 按下Ctrl键 keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYDOWN, UIntPtr.Zero); // 按下C键 keybd_event(VK_C, 0, KEYEVENTF_KEYDOWN, UIntPtr.Zero); // 松开C键 keybd_event(VK_C, 0, KEYEVENTF_KEYUP, UIntPtr.Zero); // 松开Ctrl键 keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, UIntPtr.Zero); } }

在这个示例中,我们先按下Ctrl键,然后按下C键,最后释放C键和Ctrl键,从而模拟了Ctrl+C组合键的操作。你可以根据需要修改按键码和扫描码来发送其他组合键。

提供PHP及ThinkPHP框架的定制开发、代码优化,PHP修改、ThinkPHP修改。

邮箱:yvsm@163.com 微信:yvsm316 QQ:316430983
关闭

用微信“扫一扫”