2013-06-12 38 views
3

所以我使用java System.getProperties(「user.home」)。這是我遇到的問題,我在需要管理員權限的安裝過程中調用它,並且在安裝過程中,我需要將一些文件保存在用戶的目錄中(例如c:\ Users \ myname \ AppData \ Local \ SavedFiles)。問題出現如下圖所示的步驟:用於Windows 8的Java System.properties獲取登錄用戶

1)用戶mbrando登錄8
2)他跑窗口的他會被提示管理員權限登錄安裝
3)
4),他登錄爲用戶:imadmin
5)安裝程序會繼續
6)安裝程序保存一些文件是本地在C用戶:\用戶\ imadmin \ AppData的...
,而不是C:\用戶\ mbrando \ AppData的

用戶的本地主目錄是通過調用System.getProperties(「user.home」)獲得的。基本上我想知道id我可以得到登錄用戶的主目錄,而不是管理員用戶的。任何想法我可以如何使用java System.getProperties獲得此?

謝謝。

+1

Windows是一個多用戶系統。如果其他用戶運行該應用程序會怎樣?考慮在第一次運行應用程序時執行此設置。還要注意[在Windows上使用'user.home'的問題](http://stackoverflow.com/questions/585534) - 它可能並不指向任何有用的東西。 – McDowell

回答

0

安裝程序實際上由「imadmin」運行。不是mbrando。

+0

是的,這就是發生了什麼事。但是有可能獲得其他用戶的信息(例如他的主目錄甚至用戶名)嗎? – ibaralf