Search
Module:
Directory

   Desktop Functions:

   Smart Device Functions:


Show Recent Changes
Subscribe (RSS)
Misc. Pages
Comments
FAQ
Helpful Tools
Playground
Suggested Reading
Website TODO List
Download Visual Studio Add-In

CSIDL (Enums)
 
.
Summary
TODO - a short description
Summary
CSIDLs are the IDs attached to Windows special folders. The IDs can vary based on the version of the shell and the enums are titled accordingly. VALL_SpecialFolders contains values that can be used in any version of the shell up to V6 (Windows XP)

C# Definition:

enum CSIDL {
    CSIDL_ADMINTOOLS        = 0x0030,
    CSIDL_ALTSTARTUP        = 0x001d,
    CSIDL_APPDATA           = 0x001a,
    CSIDL_BITBUCKET         = 0x000a,
    CSIDL_CDBURN_AREA           = 0x003b,
    CSIDL_COMMON_ADMINTOOLS     = 0x002f,
    CSIDL_COMMON_ALTSTARTUP     = 0x001e,
    CSIDL_COMMON_APPDATA        = 0x0023,
    CSIDL_COMMON_DESKTOPDIRECTORY   = 0x0019,
    CSIDL_COMMON_DOCUMENTS      = 0x002e,
    CSIDL_COMMON_FAVORITES      = 0x001f,
    CSIDL_COMMON_MUSIC          = 0x0035,
    CSIDL_COMMON_OEM_LINKS      = 0x003a,
    CSIDL_COMMON_PICTURES       = 0x0036,
    CSIDL_COMMON_PROGRAMS       = 0X0017,
    CSIDL_COMMON_STARTMENU      = 0x0016,
    CSIDL_COMMON_STARTUP        = 0x0018,
    CSIDL_COMMON_TEMPLATES      = 0x002d,
    CSIDL_COMMON_VIDEO          = 0x0037,
    CSIDL_COMPUTERSNEARME       = 0x003d,
    CSIDL_CONNECTIONS           = 0x0031,
    CSIDL_CONTROLS          = 0x0003,
    CSIDL_COOKIES           = 0x0021,
    CSIDL_DESKTOP           = 0x0000,
    CSIDL_DESKTOPDIRECTORY      = 0x0010,
    CSIDL_DRIVES            = 0x0011,
    CSIDL_FAVORITES         = 0x0006,
    CSIDL_FLAG_CREATE           = 0x8000,
    CSIDL_FLAG_DONT_VERIFY      = 0x4000,
    CSIDL_FLAG_MASK         = 0xFF00,
    CSIDL_FLAG_NO_ALIAS         = 0x1000,
    CSIDL_FLAG_PER_USER_INIT    = 0x0800,
    CSIDL_FONTS             = 0x0014,
    CSIDL_HISTORY           = 0x0022,
    CSIDL_INTERNET          = 0x0001,
    CSIDL_INTERNET_CACHE        = 0x0020,
    CSIDL_LOCAL_APPDATA         = 0x001c,
    CSIDL_MYDOCUMENTS           = 0x000c,
    CSIDL_MYMUSIC           = 0x000d,
    CSIDL_MYPICTURES        = 0x0027,
    CSIDL_MYVIDEO           = 0x000e,
    CSIDL_NETHOOD           = 0x0013,
    CSIDL_NETWORK           = 0x0012,
    CSIDL_PERSONAL          = 0x0005,
    CSIDL_PRINTERS          = 0x0004,
    CSIDL_PRINTHOOD         = 0x001b,
    CSIDL_PROFILE           = 0x0028,
    CSIDL_PROGRAM_FILES         = 0x0026,
    CSIDL_PROGRAM_FILES_COMMON      = 0x002b,
    CSIDL_PROGRAM_FILES_COMMONX86   = 0x002c,
    CSIDL_PROGRAM_FILESX86      = 0x002a,
    CSIDL_PROGRAMS          = 0x0002,
    CSIDL_RECENT            = 0x0008,
    CSIDL_RESOURCES         = 0x0038,
    CSIDL_RESOURCES_LOCALIZED       = 0x0039,
    CSIDL_SENDTO            = 0x0009,
    CSIDL_STARTMENU         = 0x000b,
    CSIDL_STARTUP           = 0x0007,
    CSIDL_SYSTEM            = 0x0025,
    CSIDL_SYSTEMX86         = 0x0029,
    CSIDL_TEMPLATES         = 0x0015,
    CSIDL_WINDOWS           = 0x0024  
}

public enum VAll

    {
        CSIDL_DESKTOP                        = 0x0000,    //The virtual folder representing the Windows desktop
        CSIDL_INTERNET                        = 0x0001,    //A virtual folder representing the Internet
        CSIDL_PROGRAMS                        = 0x0002,    //The file system directory that contains the user's program groups (which are themselves file system directories)
        CSIDL_CONTROLS                        = 0x0003,    //The virtual folder containing icons for the Control Panel applications
        CSIDL_PRINTERS                        = 0x0004,    //The virtual folder containing installed printers.
        CSIDL_FAVORITES                        = 0x0006,    //The file system directory that serves as a common repository for the user's favorite items
        CSIDL_STARTUP                        = 0x0007,    //The file system directory that corresponds to the user's Startup program group. The system starts these programs whenever any user logs onto Windows NT or starts Windows 95
        CSIDL_RECENT                        = 0x0008,    //The file system directory that contains shortcuts to the user's most recently used documents.
        CSIDL_SENDTO                        = 0x0009,    //The file system directory that contains Send To menu items.
        CSIDL_BITBUCKET                        = 0x000a,    //Virtual folder containing items in the Recycle Bin
        CSIDL_STARTMENU                        = 0x000b,    //The file system directory containing Start menu items
        CSIDL_MYMUSIC                        = 0x000d,    //The file system directory that serves as a common repository for music files.
        CSIDL_DESKTOPDIRECTORY                = 0x0010,    //The file system directory used to physically store file objects on the desktop
        CSIDL_DRIVES                        = 0x0011,    //The virtual folder representing My Computer, containing everything on the local computer
        CSIDL_NETWORK                        = 0x0012,    //A virtual folder representing Network Neighborhood, the root of the network namespace hierarchy
        CSIDL_NETHOOD                        = 0x0013,    //A file system directory containing the link objects that may exist in the My Network Places virtual folder. It is not the same as CSIDL_NETWORK, which represents the network namespace root
        CSIDL_FONTS                            = 0x0014,    //A virtual folder containing fonts
        CSIDL_TEMPLATES                        = 0x0015,    //The file system directory that serves as a common repository for document templates
        CSIDL_COMMON_STARTMENU                = 0x0016,    //programs and folders that appear on the Start menu for all users (NT ONLY)
        CSIDL_COMMON_PROGRAMS                = 0x0017,    //common program groups that appear on the Start menu for all users (NT ONLY)
        CSIDL_COMMON_STARTUP                = 0x0018,    //directory containing the programs that appear in the Startup folder for all users (NT ONLY)
        CSIDL_COMMON_DESKTOPDIRECTORY        = 0x0019,    //Desktop Directory for all users (NT ONLY)
        CSIDL_PRINTHOOD                        = 0x001b,    //The file system directory that contains the link objects that can exist in the Printers virtual folder
        CSIDL_ALTSTARTUP                    = 0x001d,    //Non-Localized Startup program group
        CSIDL_COMMON_ALTSTARTUP                = 0x001e,    //Non-Localized Startup program group for all users (NT ONLY)
        CSIDL_COMMON_FAVORITES                = 0x001f,    //Favourites Common to all users (NT ONLY)
        CSIDL_COOKIES                        = 0x0021,    //file system directory that serves as a common repository for Internet cookies.
        CSIDL_HISTORY                        = 0x0022,    //The file system directory that serves as a common repository for Internet history items
        CSIDL_COMMON_TEMPLATES                = 0x002d,    //directory that contains the templates that are available to all users. (NT ONLY)
        CSIDL_COMMON_DOCUMENTS                = 0x002e    //Common Documents for All users (NT ONLY)

    };

    //Windows 98 or Earlier Plus Explorer 4.0
    public enum V471_SpecialFolders
    {
        CSIDL_PERSONAL                        = 0x0005,    //The file system directory used to physically store a user's common repository of documents.  This should be distinguished from the virtual My Documents folder in the namespace
        CSIDL_APPDATA                        = 0x001a,    //Common Repository for Application Specific Data

    };

    //Windows 98 + Explorer 4.01
    public enum V472_SpecialFolders
    {
        CSIDL_PERSONAL                        = 0x0005,    //The file system directory used to physically store a user's common repository of documents.  This should be distinguished from the virtual My Documents folder in the namespace
        CSIDL_INTERNET_CACHE                = 0x0020    //The file system directory that serves as a common repository for temporary Internet files
    };

    //Windows 2000 / ME
    public enum V5_SpecialFolders
    {
        CSIDL_PERSONAL                        = 0x0005,    //The file system directory used to physically store a user's common repository of documents.  This should be distinguished from the virtual My Documents folder in the namespace
        CSIDL_LOCAL_APPDATA                    = 0x001c,    //The file system directory that serves as a data repository for local (nonroaming) applications
        CSIDL_COMMON_APPDATA                = 0x0023,    //Common Application Data for all users
        CSIDL_WINDOWS                        = 0x0024,    //The Windows directory or SYSROOT. This corresponds to the %windir% or %SYSTEMROOT% environment variables
        CSIDL_SYSTEM                        = 0x0025,    //The Windows System folder
        CSIDL_PROGRAM_FILES                    = 0x0026,    //The Program Files folder
        CSIDL_MYPICTURES                    = 0x0027,    //The file system directory that serves as a common repository for image files
        CSIDL_PROFILE                        = 0x0028,    //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 CSIDL_APPDATA or CSIDL_LOCAL_APPDATA.
        CSIDL_PROGRAM_FILES_COMMON            = 0x002b,    //A folder for components that are shared across applications.  Valid only for Windows NT, Windows 2000, and Windows XP systems. Not valid for Windows Millennium Edition (Windows Me)
        CSIDL_COMMON_ADMINTOOLS                = 0x002f,    //File System Directory used to store Common / Shared Admin Tools
        CSIDL_ADMINTOOLS                    = 0x0030,    //File System Directory used to store Admin tools for an individual user. Roams
        CSIDL_FLAG_CREATE                    = 0x8000,    //Combine this CSIDL with any of the other CSIDLs to force the creation of the associated folder
    };

    //Windows XP
    public enum V6_SpecialFolders
    {
        CSIDL_PERSONAL                        = 0x0005,    //The virtual folder representing the My Documents desktop item. This is equivalent to CSIDL_MYDOCUMENTS
        CSIDL_MYDOCUMENTS                    = 0x000c,    //The virtual folder representing the My Documents desktop item
        CSIDL_MYVIDEO                        = 0x000e,    //The file system directory that serves as a common repository for video files.
        CSIDL_COMMON_MUSIC                    = 0x0035,    //music files common to all users (My Music)
        CSIDL_COMMON_PICTURES                = 0x0036,    //repository for image files common to all users (My Pictures)
        CSIDL_COMMON_VIDEO                    = 0x0037,    //file system directory that serves as a repository for video files common to all users
        CSIDL_CDBURN_AREA                    = 0x003b,    //Area containing Items waiting to burned to a CD  
        CSIDL_PROFILES                        = 0x003e    //The file system directory containing user profile folders.
    };

VB Definition:

Enum CSIDL
    CSIDL_ADMINTOOLS = &H30
    CSIDL_ALTSTARTUP = &H1D
    CSIDL_APPDATA = &H1A
    CSIDL_BITBUCKET = &HA
    CSIDL_CDBURN_AREA = &H3B
    CSIDL_COMMON_ADMINTOOLS = &H2F
    CSIDL_COMMON_ALTSTARTUP = &H1E
    CSIDL_COMMON_APPDATA = &H23
    CSIDL_COMMON_DESKTOPDIRECTORY = &H19
    CSIDL_COMMON_DOCUMENTS = &H2E
    CSIDL_COMMON_FAVORITES = &H1F
    CSIDL_COMMON_MUSIC = &H35
    CSIDL_COMMON_OEM_LINKS = &H3A
    CSIDL_COMMON_PICTURES = &H36
    CSIDL_COMMON_PROGRAMS = &H17
    CSIDL_COMMON_STARTMENU = &H16
    CSIDL_COMMON_STARTUP = &H18
    CSIDL_COMMON_TEMPLATES = &H2D
    CSIDL_COMMON_VIDEO = &H37
    CSIDL_COMPUTERSNEARME = &H3D
    CSIDL_CONNECTIONS = &H31
    CSIDL_CONTROLS = &H3
    CSIDL_COOKIES = &H21
    CSIDL_DESKTOP = &H0
    CSIDL_DESKTOPDIRECTORY = &H10
    CSIDL_DRIVES = &H11
    CSIDL_FAVORITES = &H6
    CSIDL_FLAG_CREATE = &H8000
    CSIDL_FLAG_DONT_VERIFY = &H4000
    CSIDL_FLAG_MASK = &HFF00
    CSIDL_FLAG_NO_ALIAS = &H1000
    CSIDL_FLAG_PER_USER_INIT = &H800
    CSIDL_FONTS = &H14
    CSIDL_HISTORY = &H22
    CSIDL_INTERNET = &H1
    CSIDL_INTERNET_CACHE = &H20
    CSIDL_LOCAL_APPDATA = &H1C
    CSIDL_MYDOCUMENTS = &HC
    CSIDL_MYMUSIC = &HD
    CSIDL_MYPICTURES = &H27
    CSIDL_MYVIDEO = &HE
    CSIDL_NETHOOD = &H13
    CSIDL_NETWORK = &H12
    CSIDL_PERSONAL = &H5
    CSIDL_PRINTERS = &H4
    CSIDL_PRINTHOOD = &H1B
    CSIDL_PROFILE = &H28
    CSIDL_PROGRAM_FILES = &H26
    CSIDL_PROGRAM_FILES_COMMON = &H2B
    CSIDL_PROGRAM_FILES_COMMONX86 = &H2C
    CSIDL_PROGRAM_FILESX86 = &H2A
    CSIDL_PROGRAMS = &H2
    CSIDL_RECENT = &H8
    CSIDL_RESOURCES = &H38
    CSIDL_RESOURCES_LOCALIZED = &H39
    CSIDL_SENDTO = &H9
    CSIDL_STARTMENU = &HB
    CSIDL_STARTUP = &H7
    CSIDL_SYSTEM = &H25
    CSIDL_SYSTEMX86 = &H29
    CSIDL_TEMPLATES = &H15
    CSIDL_WINDOWS = &H24
   TODO
End Enum

Notes:

None.

Documentation
CSIDL on MSDN
 

Please edit this page!

Do you have...

  • helpful tips?
  • corrections to the existing content?
  • additional languages you want to include?

Select "Edit This Page" on the right hand toolbar and edit it!

 
Access PInvoke.net directly from VS:
Terms of Use
Edit This Page
Find References
Show Printable Version
Revisions