在不把視窗設定成當前視窗的條件下,對視窗進行操作。
做外掛的第一步,就是模擬鍵盤滑鼠的操作。模擬很簡單,但要在不搶鼠,不與鍵盤衝突,不影響使用者其他操作的條件下模擬對我來說就困難了。
以下問題都以一含有確定按鈕和一文字框的程式為例:
解決思路:
1:不搶鼠,不與鍵盤衝突:
我用SendMessage(HWND hWnd, //要操作的控制程式碼
UINT iMessage, //訊息程式碼
WPARAM wParam, //字引數,內容有具體訊息決定。
LPARAM lParam //長引數,內容有具體訊息決定。 );
來模擬滑鼠和鍵盤的操作。
2:不影響使用者其他操作:
就是在非當前視窗環境下讓視窗接受訊息。
1:把所有訊息直接發給視窗處理。訊息程式碼為WM_COMMAND,字引數內容付值為控制元件的ID。
WM_COMMAND wNotifyCode = HIWORD(wParam);
wID = LOWORD(wParam);
hwndCtl = (HWND) lParam;
wNotifyCode
Value of the high-order word of wParam. Specifies the notification code if the message is from a control. If the message is from an accelerator, this parameter is 1. If the message is from a menu, this parameter is 0.
wID
Value of the low-order word of wParam. Specifies the identifier of the menu item, control, or accelerator.
hwndCtl
Handle to the control sending the message if the message is from a control. Otherwise, this parameter is NULL.
2:直接對要操作的物件傳送訊息,這種情況要啟用他的父視窗,用SetActiveWindow()實現。但是SetActiveWindow()是個只對本程式內視窗可用的函式,要對其他視窗起作用就要配合AttachThreadInput()使用。
有點累,不太適合對螢幕寫東西,呵呵。先到這吧,一會補充。
相關文章
- Windows API視窗程式設計 - 空白視窗WindowsAPI程式設計
- CSS 實現元素在當前視窗水平垂直居中CSS
- 視窗
- Flink的滾動視窗、會話視窗、滑動視窗及其應用會話
- 三種方法在當前目錄下開啟cmd命令視窗
- day99:MoFang:Flask-JSONRPC提供RPC介面&在APP進行視窗頁面操作(視窗-幀-幀組)FlaskJSONRPCAPP
- mysql視窗函式中的滑動視窗MySql函式
- win10怎麼把軟體視窗設定最前 win10鎖定視窗在最前如何設定Win10
- Go Qt5 建立空白視窗、視窗居中及關閉視窗事件GoQT事件
- Qt 設定視窗居中顯示QT
- JAVA 程式 在 cmd 視窗的執行Java
- 拆分視窗
- 聊天視窗
- 視窗事件事件
- win10快捷鍵關閉當前視窗怎麼操作_win10快捷鍵快速關掉所有視窗方法Win10
- win10固定視窗大小怎麼設定_win10如何鎖定視窗大小Win10
- dotnet 如何從 Gtk 3 的視窗到對應的 X11 視窗
- PyQT5視窗樣式設定QT
- win10並排顯示視窗怎麼設定_win10多視窗平鋪操作方法Win10
- vim 基本操作,拷貝,貼上,刪除,行內移動,查詢與替換,多視窗,橫向豎向分屏,放大當前視窗...
- win10 如何將視窗置頂 win10怎麼設定視窗置頂Win10
- Win10系統如何更改視窗元件字型大小 win10視窗字型設定Win10元件
- WPF中實現彈出進度條視窗
- 視窗程式的框架框架
- 彈出視窗
- 視窗程式框架框架
- QT視窗類QT
- win10 視窗文字大小怎麼設定_win10怎麼設定視窗文字大小Win10
- pyqt5建立主視窗(介紹視窗型別)QT型別
- 詳解SQL操作的視窗函式SQL函式
- 01-Tkinter教程-視窗的管理與設定
- iTerm2 如何設定半透明視窗?
- win10彈出視窗阻止程式在哪_win10視窗阻止程式怎麼設定Win10
- 使用Windows API進行GDI視窗繪圖WindowsAPI繪圖
- 廣告彈窗/小視窗程式碼
- 在非主執行緒中建立視窗執行緒
- WPF 穩定的全屏化視窗方法
- 在新視窗開啟連結的方法是什麼?那怎麼設定全站連結都在新視窗開啟?
- plsql developer 視窗的使用SQLDeveloper