Environment::SpecialFolder Enumeration

 

Specifies enumerated constants used to retrieve directory paths to system special folders.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

[ComVisibleAttribute(true)]
public enum class SpecialFolder

Member nameDescription
AdminTools

The file system directory that is used to store administrative tools for an individual user. The Microsoft Management Console (MMC) will save customized consoles to this directory, and it will roam with the user. Added in the .NET Framework 4.

ApplicationData

The directory that serves as a common repository for application-specific data for the current roaming user.

CDBurning

The file system directory that acts as a staging area for files waiting to be written to a CD. Added in the .NET Framework 4.

CommonAdminTools

The file system directory that contains administrative tools for all users of the computer. Added in the .NET Framework 4.

CommonApplicationData

The directory that serves as a common repository for application-specific data that is used by all users.

CommonDesktopDirectory

The file system directory that contains files and folders that appear on the desktop for all users. This special folder is valid only for Windows NT systems. Added in the .NET Framework 4.

CommonDocuments

The file system directory that contains documents that are common to all users. This special folder is valid for Windows NT systems, Windows 95, and Windows 98 systems with Shfolder.dll installed. Added in the .NET Framework 4.

CommonMusic

The file system directory that serves as a repository for music files common to all users. Added in the .NET Framework 4.

CommonOemLinks

This value is recognized in Windows Vista for backward compatibility, but the special folder itself is no longer used. Added in the .NET Framework 4.

CommonPictures

The file system directory that serves as a repository for image files common to all users. Added in the .NET Framework 4.

CommonProgramFiles

The directory for components that are shared across applications.

To get the x86 common program files directory on a non-x86 system, use the ProgramFilesX86 member.

CommonProgramFilesX86

The Program Files folder. Added in the .NET Framework 4.

CommonPrograms

A folder for components that are shared across applications. This special folder is valid only for Windows NT, Windows 2000, and Windows XP systems. Added in the .NET Framework 4.

CommonStartMenu

The file system directory that contains the programs and folders that appear on the Start menu for all users. This special folder is valid only for Windows NT systems. Added in the .NET Framework 4.

CommonStartup

The file system directory that contains the programs that appear in the Startup folder for all users. This special folder is valid only for Windows NT systems. Added in the .NET Framework 4.

CommonTemplates

The file system directory that contains the templates that are available to all users. This special folder is valid only for Windows NT systems. Added in the .NET Framework 4.

CommonVideos

The file system directory that serves as a repository for video files common to all users. Added in the .NET Framework 4.

Cookies

The directory that serves as a common repository for Internet cookies.

Desktop

The logical Desktop rather than the physical file system location.

DesktopDirectory

The directory used to physically store file objects on the desktop.

Favorites

The directory that serves as a common repository for the user's favorite items.

Fonts

A virtual folder that contains fonts. Added in the .NET Framework 4.

History

The directory that serves as a common repository for Internet history items.

InternetCache

The directory that serves as a common repository for temporary Internet files.

LocalApplicationData

The directory that serves as a common repository for application-specific data that is used by the current, non-roaming user.

LocalizedResources

The file system directory that contains localized resource data. Added in the .NET Framework 4.

MyComputer

The My Computer folder.

MyDocuments

The My Documents folder.

MyMusic

The My Music folder.

MyPictures

The My Pictures folder.

MyVideos

The file system directory that serves as a repository for videos that belong to a user. Added in the .NET Framework 4.

NetworkShortcuts

A file system directory that contains the link objects that may exist in the My Network Places virtual folder. Added in the .NET Framework 4.

Personal

The directory that serves as a common repository for documents.

PrinterShortcuts

The file system directory that contains the link objects that can exist in the Printers virtual folder. Added in the .NET Framework 4.

ProgramFiles

The program files directory.

On a non-x86 system, passing ProgramFiles to the GetFolderPath method returns the path for non-x86 programs. To get the x86 program files directory on a non-x86 system, use the ProgramFilesX86 member.

ProgramFilesX86

The x86 Program Files folder. Added in the .NET Framework 4.

Programs

The directory that contains the user's program groups.

Recent

The directory that contains the user's most recently used documents.

Resources

The file system directory that contains resource data. Added in the .NET Framework 4.

SendTo

The directory that contains the Send To menu items.

StartMenu

The directory that contains the Start menu items.

Startup

The directory that corresponds to the user's Startup program group.

System

The System directory.

SystemX86

The Windows System folder. Added in the .NET Framework 4.

Templates

The directory that serves as a common repository for document templates.

UserProfile

The user's profile folder. Applications should not create files or folders at this level; they should put their data under the locations referred to by ApplicationData. Added in the .NET Framework 4.

Windows

The Windows directory or SYSROOT. This corresponds to the %windir% or %SYSTEMROOT% environment variables. Added in the .NET Framework 4.

The system special folders are folders such as Program Files, Programs, System, or Startup, which contain common information. Special folders are set by default by the system, or explicitly by the user, when installing a version of Windows.

The GetFolderPath method returns the locations associated with this enumeration. The locations of these folders can have different values on different operating systems, the user can change some of the locations, and the locations are localized.

For more information about special folders, see the KNOWNFOLDERID constants in the Windows documentation.

The following example shows how to use Environment::SpecialFolder with the GetFolderPath method to get the System directory.

// Sample for the Environment::GetFolderPath method
using namespace System;
int main()
{
   Console::WriteLine();
   Console::WriteLine( "GetFolderPath: {0}", Environment::GetFolderPath( Environment::SpecialFolder::System ) );
}

/*
This example produces the following results:

GetFolderPath: C:\WINNT\System32
*/

.NET Framework
Available since 1.1
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top
Show: