有人能指点我一个文件,其中列出了窗口中的所有标准文件位置,以及应该和不应该使用它们。 就像是
User Application Data -> %USERDIR%/AppData/Local/%VENDOR%/%APPLICATION%
等等。
大免责声明
千万不要 使用这些地方的硬路径 。 只能使用提供的API(无论这些API是标准的Win32 API,.NET API等等)来访问它们。 否则,您将冒着打破Windows的不同版本和语言的风险。
这是一个真正的风险 – 他们已经改变了这些地点至少四次 – 这正是我所能想到的! 更不用说漫游配置文件和其他有趣的奇怪,可以突然出现。
现在这个大的免责声明已经排除在外了,列表在哪里呢? 维基百科有它。 采取一些“先出现在”一粒盐, 我90%确定我已经看到其中一些比声称的更早出现。 我对以下内容进行了无耻的剪贴 – 重新格式化:
%USERPROFILE%\Application Data
%USERPROFILE%\Cookies
%USERPROFILE%\Desktop
%USERPROFILE%\Favorites
%windir%\Fonts
%USERPROFILE%\Local Settings\History
%USERPROFILE%\Local Settings\Temporary Internet Files
%USERPROFILE%\Local Settings\Application Data
%USERPROFILE%\My Documents (WinNT line)
C:\My Documents (Win98-ME)
%USERPROFILE%\My Documents\My Music
%USERPROFILE%\My Documents\My Pictures
%USERPROFILE%\My Documents\My Videos
%USERPROFILE%\Start Menu\Programs
%USERPROFILE%\Recent
%USERPROFILE%\SendTo
%USERPROFILE%\Start Menu
%windir%\system32
%USERPROFILE%\saved games
%USERPROFILE%\Templates
MSDN上的KnownFolderID是官方列表。
查看SHGetFolderlocation() (XP)或SHGetKnownFolderIDList() (Vista / W7),了解如何正确获取这些文件夹的位置。
大量的信息可以在特殊文件夹的MSDN页面找到: http : //msdn.microsoft.com/en-us/library/system.environment.specialfolder.aspx 。 除了约翰的答案,这是有用的信息
很多这个改变与Vista / 7。 见http://www.online-tech-tips.com/windows-vista/move-my-pictures-to-different-location/
切勿使用硬编码的值。 他们的API不仅可以检索它们,还可以有一些环境变量。
例如,Windows XP有这些环境变量:
ALLUSERSPROFILE=C:\Documents and Settings\All Users APPDATA=C:\Documents and Settings\[username]\Application Data CommonProgramFiles=C:\Program Files\Common Files HOMEDRIVE=C: HOMEPATH=\Documents and Settings\[username] ProgramFiles=C:\Program Files SystemDrive=C: SystemRoot=C:\WINDOWS TEMP=%APPDATA%\Local Settings\Temp TMP=%APPDATA%\Local Settings\Temp USERPROFILE=C:\Documents and Settings\[username] windir=C:\WINDOWS
Vista增加了一些新的环境变量,如LOCALAPPDATA
, ProgramData
和Public