2011-10-01 112 views
8

任何用戶都可以訪問%APPDATA%文件夾嗎?或者只能管理員讀取&訪問那個目錄?此外,訪問此目錄的權限是否在不同的Windows平臺上從2k到Windows 7有所不同?任何用戶都可以訪問%APPDATA%文件夾嗎

+1

問題與C++或WINAPI無關。重新標記。 –

回答

10

%AppData%是用戶特定的路徑。是的,任何用戶都可以訪問%appdata%,但是它會爲每個用戶轉到不同的目錄。只有管​​理員可以讀取其他用戶的應用數據。

在您的計算機上實際執行%appdata%並查看它轉換成的路徑。你明白我的意思嗎?

13

通過在命令提示符處使用icacls工具,您可以在%APPDATA%上看到權限。下面是它看起來像我的機器上:

C:\Users\davidp>icacls %APPDATA% 
C:\Users\davidp\AppData\Roaming NT AUTHORITY\SYSTEM:(I)(OI)(CI)(F) 
           BUILTIN\Administrators:(I)(OI)(CI)(F) 
           MACHINE09\davidp:(I)(OI)(CI)(F) 

Successfully processed 1 files; Failed processing 0 files 

這意味着,只有我,管理員和系統本身可以看到該文件夾​​。如果一個文件夾,其他用戶可以看到它在運行此,你會看到這樣的事情:

C:\Users\davidp>icacls c:\ 
c:\ BUILTIN\Administrators:(F) 
    BUILTIN\Administrators:(OI)(CI)(IO)(F) 
    NT AUTHORITY\SYSTEM:(F) 
    NT AUTHORITY\SYSTEM:(OI)(CI)(IO)(F) 
    BUILTIN\Users:(OI)(CI)(RX) 
    NT AUTHORITY\Authenticated Users:(OI)(CI)(IO)(M) 
    NT AUTHORITY\Authenticated Users:(AD) 
    Mandatory Label\High Mandatory Level:(OI)(NP)(IO)(NW) 

Successfully processed 1 files; Failed processing 0 files 

你可以看到BUILTIN\Users組可以看到c:\文件夾(如你所期望的)。

編輯

我不知道的%APPDATA%變量本身如何追溯到追溯到Windows中的歷史。我建議直接檢查。在舊系統上,cacls命令是icacls的前身。無論如何,在基於Windows NT的操作系統中,只有用戶和管理員才能看到配置文件區域。

+0

'%APPDATA%''變量可以追溯到Windows Vista,在此之前,用戶信息存儲在Documents and Settings中 –

+2

'%APPDATA%'變量也適用於Windows XP。 – jmohr

+0

由於jmohr在Win XP上提到了'%APPDATA%',它也會在'C:\ Documents and Settings \ martineau \ Application Data'中出現。 – martineau

相關問題