溫馨提示×

c# keybd_event 如何發(fā)送組合鍵

c#
小樊
105
2024-07-18 20:10:25
欄目: 編程語言

要發(fā)送組合鍵,可以使用keybd_event函數(shù)來模擬鍵盤按鍵操作。keybd_event函數(shù)接受四個參數(shù):按鍵碼、掃描碼、按鍵狀態(tài)和附加標(biāo)志。

以下是一個示例代碼,演示如何發(fā)送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組合鍵的操作。你可以根據(jù)需要修改按鍵碼和掃描碼來發(fā)送其他組合鍵。

0