用程式模擬鍵盤和滑鼠鍵盤

2021-04-02 04:32:27 字數 1157 閱讀 4713

在windows大行其道的今天,windows介面程式受到廣大使用者的歡迎。對這些程式的操作不外乎兩種,鍵盤輸入控制和滑鼠輸入控制。有時,對於繁雜的,或重複性的操作,我們能否通過編制程式來代替手工輸入,而用程式來模擬鍵盤及滑鼠的輸入呢?答案是肯定的。這主要是通過兩個api函式來實現的。   

下面以delphi為例來介紹一下如何實現這兩個功能。模擬鍵盤我們用keybd_event這個api函式,模擬滑鼠按鍵用mouse_event函式。大家不用擔心,在delphi裡呼叫api函式是很方便的事。   

先介紹一下keybd_event函式。keybd_event能觸發乙個按鍵事件,也就是說回產生乙個wm_keydown或wm_keyup訊息。當然也可以用產生這兩個訊息來模擬按鍵,但是沒有直接用這個函式方便。keybd_event共有四個引數,第乙個為按鍵的虛擬鍵值,如回車鍵為 vk_return, tab鍵為vk_tab。第二個引數為掃瞄碼,一般不用設定,用0代替就行。第三個引數為選項標誌,如果為keydown則置0即可,如果為keyup則設成"keyeventf_keyup",第四個引數一般也是置0即可。用如下**即可實現模擬按下i鍵,其中的$49表示i鍵的虛擬鍵值:

keybd_event($49,0,0,0);

keybd_event($49,0,keyeventf_keyup,0); ...   

mouse_event最好配合setcursorpos(x,y)函式一起使用,與keybd_event類似,mouse_event有五個引數,第乙個為選項標誌,為 mouseeventf_leftdown時表示左鍵按下,為mouseeventf_leftup表示左鍵鬆開,向系統傳送相應訊息。第二三個引數分別表示x,y相對位置,一般可設為0,0,第四五個引數並不重要,一般也可設為0,0。若要得到keybd_event和mouse_event函式的更詳細的用法,可以查閱msdn或delphi幫助。下面是關於mouse_event的示例**:

setcursorpos(20,132);

mouse_event(mouseeventf_leftdown,0,0,0,0);

mouse_event(mouseeventf_leftup,0,0,0,0);

mouse_event(mouseeventf_leftdown,0,0,0,0);

mouse_event(mouseeventf_leftup,0,0,0,0); ...

模擬滑鼠鍵盤使用

一.模擬滑鼠使用 1.定位到元素 將該元素賦給乙個變數 a driver.find element by id username 2.新建乙個動作鏈 actionchains driver 3.使用這個動作鏈的某個方法,操作元素 4.執行這個操作 proform actionchains drive...

pyautogui模擬滑鼠鍵盤操作

快捷鍵win r調出 執行 命令視窗,輸出cmd 在cmd命令視窗輸出 pip install pyautogui 等待安裝,直到完成 開啟python的idle 導入庫 import pyautogui as pg 按需輸入命令即可 每條指令執行間隔 類似全域性 pg.pause 1 每隔1s執行...

通用滑鼠鍵盤

該程式通過並行機制處理滑鼠和鍵盤的訊息,為了簡化程式裁減了一些 該程式可用為基礎在該程式上新增 可用於文字編輯,遊戲和其他滑鼠鍵盤通用的程式.include include include include include union regs regs unsigned size void far ...