簡體   English   中英

如何使用C ++和Windows API向Windows 7發送擊鍵/消息?

[英]How to send keystrokes/messages to Windows 7 with C++ and Windows API?

例如,某個程序是否可以向Windows 7(正在運行的操作系統)發送擊鍵或消息,以模擬用戶實際按下其鍵盤上的Windows鍵的效果? 在C ++中,使用Windows API?

SendInput函數已經使用了很長時間了,應該可以滿足您的需要。

初學者經常嘗試將密鑰發送到Windows,因為他們認為這是最簡單的解決方案。 可以肯定地說很容易回答。 通常,在開發人員投入大量時間后,它變得很復雜。 復雜的原因之一是因為您必須確保控件(文本框或其他內容)具有焦點。 然后,您必須做一些事情來處理數據,例如按下按鈕。 您可能需要閱讀窗口以決定下一步要做什么。

另一種選擇是上一層並嘗試通過訪問控件及其父控件(窗口)來控制應用程序。 因此,換句話說,您可以直接將數據作為字符串放入文本框,而無需在其中輸入鍵。 您可以向窗口發送BN_CLICKED通知消息,而不是向按鈕發送Enter鍵以單擊按鈕。 您應該尋找做這種事情的方法。 這是完全可能的。

熟悉Spy ++; 它是一個可以真正幫助您探索控件和窗口等的工具。

您可以使用SendInput進行任何模擬的輸入,但是,您會受到應用程序完整性級別的約束(也就是說,您無法將輸入注入到具有更高級別的應用程序中)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM