簡體   English   中英

在新窗口上獲取窗口標題

[英]Get window title on new window

我正在編寫一個鍵盤記錄程序類型的應用程序,並且我已經完成了幾乎所有的事情,我的問題是獲取窗口標題,我不想每次他們按下一個鍵時都寫窗口標題,我可以獲取窗口標題,例如我知道該怎么做,但是當它有一個新窗口時,我將如何只將其寫入日志?

您可以維護所有窗口的內部列表(使用窗口句柄作為標識符,以保持較低的內存使用率),並在出現新窗口時將其提取。

Win32 API(我假設您正在使用)具有以下功能:

EnumChildWindows

可用於此任務。 呼叫

GetDesktopWindow

提供作為輸入窗口句柄,您將獲得在此桌面會話下創建的每個窗口。

我不確定這是否仍然可以通過RDP(Windows Vista +具有安全的桌面以及普通客戶端)運行,但這取決於此功能對您的重要性。

存儲前一個窗口標題,如果當前窗口標題與前一個窗口標題不同,則打印新窗口標題並將前一個窗口標題設置為當前窗口標題。

如果存在多個具有相同名稱的窗口,則此操作將失敗,但是它可以滿足您的需求。

每當檢測到按鍵時,調用GetForegroundWindow即可獲取當前焦點窗口的句柄。 將該值存儲為程序中的變量,更改后,調用GetWindowText獲取窗口標題並記錄該標題。

暫無
暫無

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

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