2014-05-09 53 views
-1

我開始寫一個基本的「學習夥伴」計劃作爲一個副項目。我想要實現的一個重要功能是程序可以訪問其他正在運行的程序的狀態,以防止您訪問它們/對你大喊大叫。例如,如果您將Chrome瀏覽器打開至Facebook,或者您已啓動視頻遊戲。 首先,這是甚至可能/合理的在Java中完成?其次,特別是對於Chrome,我如何從另一個正在編寫的程序訪問程序狀態?更一般地說,我怎樣才能訪問計算機上運行的所有程序,並檢查是否有任何違反「學習允許」的程序?如何訪問Java中其他計算機進程的狀態?

+0

這將是操作系統特定的。可以做到嗎?大概。它可以輕鬆完成嗎?可能不會。您將不得不附加到操作系統的正在運行的進程,以查看當前正在運行的進程,然後確定進程,然後知道如何輪詢瀏覽器等特定的進程以查看它們是否正在執行任務。此外,您需要一些方法來識別遊戲等,並且隨時添加新遊戲,所以現在您需要有一個動態匹配系統,該系統會定期更新以保持或實時更新。 – CodeChimp

回答

0

我會把這個作爲評論,但我的名譽點是不夠的。 一種方法是使用操作系統提供的命令。您可以運行一個命令

Runtime.getRuntime().exec("<command name>"); 

這會給你相關的過程,你可以得到該過程的輸出,就像手動運行的進程。然後,你可以利用輸出。 基本上,如果操作系統手動爲您提供該信息,則應該能夠在Java中獲取信息。

+0

感謝您的幫助!至少讓我開始了。 –