2010-01-08 75 views

回答

4

由於@TML指出,System.Capabilities.os將讓你的操作系統。現在我不知道獲取用戶名的任何直接方式,但AIR文件類具有userDirectory屬性,該屬性將爲您提供對登錄用戶主目錄的引用。該對象的nativePath應該具有登錄用戶的名稱。

//user directory path normally ends with the user name like 
//xp : C:\Documents and Settings\userName 
//mac : /Users/userName 
//*nix : /home/username or /home/groupname/username 

var os:String = System.Capabilities.os; 
var usr:String = File.userDirectory.nativePath; 
var sep:String = File.separator; 
if(usr.charAt(usr.length - 1) == sep) 
    usr = usr.substring(0, usr.length - 1);//remove trailing slash 
usr = usr.substring(usr.lastIndexOf(sep) + 1); 
trace(usr); 

測試各種操作系統和尋找是否有在生產代碼中使用這個(類案件之前的任何邊緣情況下,用戶名不是用戶目錄的最後一部分 - 我不知道有任何,只是以防萬一)。

2

檢入flash.system.Capabilities - 我相信它有你在找的東西。

NOTE:事實上,事實證明這是一個重複的問題:Get Current Operating System In Adobe Air

+0

謝謝。那麼當前登錄的OS用戶呢? – 2010-01-08 18:12:33

+1

我很確定你不能得到那個 - 該信息不應該可用於閃光燈。 – TML 2010-01-08 19:47:59

+0

通過本機進程打開命令行並執行命令echo%username%。得到這個命令的輸出:)雖然它不是一個完美的解決方案,但通過這個技巧你可以做到這一點。 – 2011-04-10 15:05:14

相關問題