在Java中,如果我在後臺運行我的Java應用程序,並且每次點擊某個應用程序,我都可以獲得它的名稱。獲取被點擊的應用程序/活動窗口的名稱
這個Java程序應該在後臺運行,而不需要用戶的知識,並將應用程序名稱發送到遠程服務器。
在Java中,如果我在後臺運行我的Java應用程序,並且每次點擊某個應用程序,我都可以獲得它的名稱。獲取被點擊的應用程序/活動窗口的名稱
這個Java程序應該在後臺運行,而不需要用戶的知識,並將應用程序名稱發送到遠程服務器。
我寫了一個時間跟蹤器應用程序,在當天做了類似的事情,跟蹤我在各種項目/應用程序等上花費的時間。這個想法是在本地跟蹤我的應用程序使用情況,並使用POST請求到集中式日誌記錄的Web服務器。我也可以在我想要的任何機器上運行這個應用程序,並且POST請求仍然會返回到中央服務器,所以我可以在多臺機器上跟蹤自己的活動。你可以使用
一件事是JNI綁定到Win32 API,這樣就可以讓您使用窗口標題,進程信息等
此Q/A應該讓你開始: How can I read the window title with JNI or JNA?
某處(我現在無法找到它)在網絡上有一個包含win32 API的.JAR
,使得這種功能在Java中非常簡單。
謝謝@normalocity –
雖然我質疑這個動機,但在Java API的範圍內這是不可能的。您需要使用JNI與底層操作系統進行交互,或者調用可以爲您提供這些詳細信息的外部程序。
感謝您的幫助,但爲什麼你把它投票呢? –
對不起,但它不是我。 – ziesemer
夥計們,有這樣做的合法理由,此外,惡意軟件精靈已經離開了瓶子。用戶和操作系統的安全機制負責維護系統安全,並且不允許安裝惡意軟件。推測這是惡意軟件是不公平的。 – jefflunt
@normalocity:「不知道用戶」使得很難給出疑問。 – Dave
@normalocity那麼請告訴,哪個合法的應用程序應該「在沒有用戶知識的情況下在後臺運行」? – Voo