2015-12-15 79 views
0

我有一個Java應用程序打包成我想在用戶登錄和註銷Windows時運行的jar。在用戶登錄/註銷時運行Java程序的批處理文件

我已經添加了命令在批處理文件中執行此操作,並通過一些日誌記錄將其添加到組策略登錄/註銷,以便我可以對其進行調試。

當我以admin用戶身份運行已登錄的批處理文件時,它會正確執行,但是當我註銷/ in時,它會跳過批處理文件中的java命令。

我猜這可能是由於本地系統運行一個Java應用程序的權限問題,有無論如何我可以解決這個/一個替代?

+0

「PATH」是否正確的java exe文件?什麼exe日誌?批處理文件中的所有相關路徑都可以正確解析? –

回答

2

您可以嘗試使用計劃任務triggered在啓動時啓動。您可以使用特定的用戶,如果進程失敗,您可能會收到更好的日誌。

+0

我的Java應用程序需要使用java命令中指定的安全管理器以及java.policy文件。觸發它啓動時,我登錄它給出了一個安全異常 - 我猜這是因爲java.policy文件未被正確加載。有關如何解決這個問題的任何想法? – Tom

+0

廢棄以上評論,是一個路徑問題。確定,以便使用任務計劃下的觸發啓動成功運行。你可以觸發所有用戶登錄/註銷的任務嗎? – Tom

+0

感謝您的幫助,我設法弄清楚發生了什麼問題 - 請參閱我的答案。 – Tom

0

由於存在路徑格式問題,我忘了將標準錯誤輸出添加到日誌記錄中('2> & 1'在流末尾),所以它'跳過'Java執行,因爲我沒有注意錯誤。

特別是在我的java.policy文件中,路徑使用'\'而不是'/'。