Special folder
On Microsoft Windows, a special folder is a folder which is presented to the user through an interface as an abstract concept instead of an absolute folder path. (The synonymous term shell folder is sometimes used instead.) Special folders make it possible for any application to ask the operating system where an appropriate location for certain kinds of files can be found, regardless of what version or language of Windows is being used.
In Windows Server 2003 and earlier, a folder like the "Start Menu" had a different name on non-English versions of Windows. For example, on German versions of Windows XP it is "Startmenü". However, since Windows Vista, all Versions of Windows use the same English named folders and only display different names in the Windows Explorer. In Windows 10 the user can switch to another display language and the names of the special folders will change.[1]
Overview
Windows uses the concept of special folders to present the contents of the storage devices connected to the computer in a fairly consistent way that frees the user from having to deal with absolute file paths, which can (and often do) change between operating system versions, and even individual installations. The idea has evolved over time, with new special folders being added in every version of Windows since their introduction in Windows 95.
Microsoft's "Compatible with Windows" software logo[2] requires that an application make use of special folders locations to locate the appropriate folders in which documents and application settings should be stored.
A special folder can either be a reference to a physical file system directory, or a reference to a "virtual" folder. In the former case, they are analogous to environment variables — in fact, many of the environment variables that are set in a user's session are defined by where the special folders are set to point to.
Virtual folders, however, do not actually exist on the file system; they are instead presented through Windows Explorer as a tree of folders that the user can navigate. This is known as the Shell namespace. On Windows XP systems, the root of this namespace is the Desktop virtual folder, which contains the My Documents, My Computer, My Network Places (Network Neighborhood in Windows 95 and 98) and Recycle Bin virtual folders. Some virtual folders (like Desktop) have an accompanying special folder that is a reference to a directory on the physical file system. Windows Explorer displays the combined contents of a virtual folder and its associated file system folder to the user. This can be seen in Figure 1, which shows the Folder view in Windows XP's Explorer; in the Desktop virtual folder, the four standard virtual folders can be seen, as well as an additional folder, "a folder on the desktop", which is a real folder located in the Desktop directory in the user's profile.
Some third-party programs add their own virtual folders to Windows Explorer.
List of special folders
The following tables list most of the file system and virtual folders that are available as of Windows Vista. The OS version in which each special folder was introduced is given as well. Items like %USERPROFILE% and %windir% are Windows environment variables.
File system directories
Special folder | Represents | Default Location (in English. Non-English versions of Windows XP or earlier will use directory names appropriate to that language.) |
First appeared in OS |
---|---|---|---|
Application Data | Per-user application-specific files |
|
98 |
Cookies | Internet Explorer browser cookies |
|
98 |
Desktop Directory | Files stored on the user's desktop |
|
95 |
Favorites | User's Favorites |
|
98 |
Fonts | Container folder for installed fonts | %windir%\Fonts |
95 |
History | User-specific browser history | %USERPROFILE%\Local Settings\History |
98 |
Internet Cache | User-specific Temporary Internet Files | %USERPROFILE%\Local Settings\Temporary Internet Files |
98 |
Local Application Data | User-specific and computer-specific application settings |
|
95 |
My Documents | User's documents |
|
98 |
My Music | User's music |
|
98 |
My Pictures | User's pictures |
|
98 |
My Videos | User's video files |
|
98 |
Programs | User-specific "(All) Programs" groups and icons |
|
95 |
Recent | User-specific "My Recent Documents" |
|
98 |
Send To | User-specific "Send To" menu items |
|
98 |
Start Menu | User-specific "Start Menu" items |
|
98 |
System | The Windows system directory |
|
95 |
Saved Games | User's Saved Games | %USERPROFILE%\Saved Games |
Vista |
Templates | User-specific document templates |
|
98 |
Notes:
- The "Desktop" virtual folder is not the same thing as the "Desktop" special folder. The Desktop virtual folder is the root of the Windows Shell namespace, which contains other virtual folders.[5]
- "Local Application Data" differs from "Application Data" in that files located in the "Local" variant are also intended to be specific to the machine it is on. This only has relevance if the user's profile is a Roaming Profile in a Windows Server domain environment.[6]
- As with Desktop, the "My Documents" virtual folder differs from the "My Documents" special folder. If the virtual folder variant is asked for, it will appear in a file dialog as a sub-directory of the "Desktop" virtual folder, instead of the user's profile directory as it physically exists on the hard drive.
- If the "My Documents" folder is moved (e.g., to a network drive), attempting to access it via the shell variable will go to the original, default location.
Virtual folders
Virtual Folder | Represents | OS |
---|---|---|
Recycle Bin | The aggregated contents of the Recycle Bin on all drives for the current user | 98 |
Control Panel | Icons for Control Panel (Windows) applets | 95 |
Desktop | The Windows Desktop | 95 |
Drives | My Computer; contains virtual folders representing everything on the local machine, as well as mapped network drives | 98 |
Internet | Resources located on the Internet; WebDAV connections, etc. | 95 |
My Documents | Virtual folder of the user's My Documents folder; used as a child of the Desktop virtual folder | 98 |
Network | Network Neighborhood (Windows 95 and 98) or My Network Places (Windows 2000 and later); contains virtual folders for representing all network resources | 98 |
Search Results | Listing of the results of the last search of the computer (appears only after a search) | [7] | 2000
Printers | Container folder for installed printers | 95 |
Notes:
- The "Desktop" virtual folder is not the same thing as the "Desktop" special folder. The Desktop virtual folder is the root of the Windows Shell namespace, which contains other virtual folders.[5]
- As with Desktop, the "My Documents" virtual folder differs from the "My Documents" special folder. If the virtual folder variant is asked for, it will appear in a file dialog as a sub-directory of the "Desktop" virtual folder, instead of the user's profile directory as it logically exists on the hard drive.
See also
- Microsoft Windows
- Windows Explorer
- Folder redirection
- Tweak UI
- Unix directory structure — similar standard for Unix
- Filesystem Hierarchy Standard — similar standard for Linux
References
- ↑ "How to Change the Display Language in Windows 10". How-To Geek. Archived from the original on Nov 6, 2015.
- ↑ Windows Software Logo Program
- ↑ 32-bit executables have this directory mapped as
%windir%\System32
. - ↑ The use of
%windir%\SysWOW64
for 64-bit libraries and executables in a 64-bit Windows OS is intended to not break existing programs that are recompiled without modifications as a 64-bit executable. - 1 2 The Shell Namespace
- ↑ Chen, Raymond (2006). "Taxes". The Old New Thing (1st ed.). Pearson Education. p. 451. ISBN 0-321-44030-7.
- ↑ Paul Thurrott's SuperSite for Windows: Windows 2000 Professional Beta 3 Reviewed
External links
- Shell Programmer's Guide - The Shell Namespace — MSDN documentation on Shell namespaces
- Environment.SpecialFolder Enumeration — MSDN documentation on accessing special folder values in the .NET Framework on Windows 7 and Windows Server 2008 R2 etc.
- CSIDL Values — MSDN documentation containing a complete list of all available special folders and virtual folders
- Known Folders — MSDN documentation describing known folders on Vista (replaces CSIDL)
- KNOWNFOLDERID Values — MSDN documentation containing a complete list of all known folders (on Vista, replaces CSIDL)
- Microsoft PowerToys for Windows XP — TweakUI is available for download on this page
- Utility that shows the path of all special folders