2017-04-03 115 views
0

我想創建一個監控記錄用戶活動(創建,刪除,更新文件夾/文件)的Java應用程序。 問題是,我沒有找到如何獲得登錄用戶的操作系統(Java應用程序正在運行在Windows服務器上,並且用戶在他們的機器上有Windows,我想知道是否有方法獲取Windows版本的記錄用戶)。Windows登錄的用戶信息

生物圈, 米哈伊

回答

0
System.getProperty("os.version") 

如果它是一個Web應用程序,您可以使用user-agent標題。它可以很容易地改變,但值得去嘗試。檢查https://stackoverflow.com/a/1328393/5684110

+0

不是Web應用程序,是服務器端的獨立應用程序 –

0

您將使用JNI並調用本機(特定於Windows的DLL)方法來獲取信息。你將不得不自己創建這個DLL(很可能用C/C++)

0

你在問一個Windows特有的功能。我懷疑Java會支持這一點,所以你需要一個本地模塊(用C/C++編寫)讀取這些信息,並通過JNI或本地套接字連接將它傳遞到Java應用程序中。也許你可以從Active Directory中查詢這些數據。

另一個想法是,您可以通過啓動時在客戶端PC上運行的另一個Java應用程序獲取信息。這樣你就可以監視文件系統中的變化以及一些基本的系統屬性,如操作系統名稱和版本(請參閱穆斯塔法的回答)。該應用程序將悄悄下載到工作站,並通過Active Directory自動運行,通過套接字,網絡或Web服務將數據發送到您的服務器應用程序。

希望這可以幫助你。