C# keybd_event用法 模擬鍵盤輸入


最近有業務需求,需要模擬鍵盤輸入,所以了解了一下C#中keybd_event函數的用法。該函數能夠產生WM_KEYUP或WM_KEYDOWN消息,即可以觸發鍵盤事件。

函數引用如下:

[DllImport("user32.dll", EntryPoint = "keybd_event")]
        public static extern void keybd_event(
            byte bVk,
            byte bScan,
            int dwFlags,  //0: DOWN, 2: UP  
            int dwExtraInfo  //Default: 0  
        );
    }

Keybd_event()共有四個參數。 
第一個為按鍵的虛擬鍵值,可以使用枚舉值System.Windows.Forms.Keys。 
第二個參數為掃描碼,一般不用設置,用0代替就行。 
第三個參數為選項標志,如果為keydown則置"0",如果為keyup則設成"2"。 
第四個參數一般也是置0即可。

'A'的虛擬鍵值為65,所以可以用如下代碼實現模擬單擊'A'鍵。 

keybd_event(65, 0, 0, 0);
keybd_event((byte)Keys.A, 0, 2, 0);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM