2013-11-20 141 views
-1

我正在製作一個應用程序,它將坐在系統托盤中,並在用戶單擊它時打開一個窗口,問題是我希望應用程序從啓動時使用exe運行,將應用程序添加到系統托盤中而不打開一個窗口。但是當用戶自己打開應用程序時,我希望窗口彈出。我如何確定應用程序在啓動時運行或由用戶運行?如何檢查Java應用程序是由用戶啓動還是啓動?

+0

相關:http://stackoverflow.com/q/17363820/1065197 –

+0

如果您不需要關心檢查的可破解性,我建議您使用命令行參數或環境變量來確定那。例如,您可以實現一個-startup選項來指示應用程序正在自動啓動。 –

回答

0

您可以使用不同的參數運行您的類的主要方法,或者爲每個用例使用主要方法創建兩個不同的類。

1

你可以編寫一個類,通過JNI你可以調用一些帶有Enum的窗口庫以及關於它的所有進程和信息。通過這種方式,您可以找到您的流程並查看誰執行了它Process Information

+0

如果這個jar會在unix/linux或Mac上執行,該怎麼辦? –

+0

我想使用一個exe來指向jar,所以在windows上不會總是顯示它是如何啓動的? – xFlRSTx

+0

他可以使用一個工具來做同樣的事情,或者執行它自己從'ps'命令讀取信息 –

相關問題