Visual Basic Browse/ PIDL / CSIDL Routines
SHGetFolderPath: CSIDL Constant Values for Shell Functions
Posted:   Monday October 08, 2001
Updated:   Monday December 26, 2011
Applies to:   VB4-32, VB5, VB6
Source:   C Header Platform SDK date July 2001
OS restrictions:   See Below
Author:   VBnet - Randy Birch
Related:   BROWSE:
SHBrowseForFolder: Browse Folders Dialog Overview
SHBrowseForFolder: Browse for Folders Dialog
SHBrowseForFolder: Browse for Folders Callback Overview
SHBrowseForFolder: Browse for Folders New UI Features
SHBrowseForFolder: Pre-selecting Folders using a Browse Callback

CSIDL / Folders:
SHGetFolderPath: Overview of Shell and ComCtrl Versions, CSIDL Values
SHGetFolderPath: Retrieve Windows Shell Folders (Best Practice)

Some values may only apply to later shell versions.  For a description of DLL versioning, see SHGetFolderPath: Overview of Shell and ComCtrl Versions, CSIDL Values.

This lists the const values for all CSIDL values as defined in the July 2001 Platform SDK header.
 Form Code

Option Explicit
' Copyright 1996-2011 VBnet/Randy Birch, All Rights Reserved.
' Some pages may also contain other copyrights by the author.
' Distribution: You can freely use this code in your own
'               applications, but you may not reproduce 
'               or publish this code on any web site,
'               online service, or distribute as source 
'               on any media without express permission.
Private Const CSIDL_DESKTOP                 As Long = &H0

'Internet Explorer (icon on desktop)
Private Const CSIDL_INTERNET                As Long = &H1

'Start Menu\Programs
Private Const CSIDL_PROGRAMS                As Long = &H2

'My Computer\Control Panel
Private Const CSIDL_CONTROLS                As Long = &H3

'My Computer\Printers
Private Const CSIDL_PRINTERS                As Long = &H4

'My Documents
Private Const CSIDL_PERSONAL                As Long = &H5

'<user name>\Favourites
Private Const CSIDL_FAVORITES               As Long = &H6

'Start Menu\Programs\Startup
Private Const CSIDL_STARTUP                 As Long = &H7

'<user name>\Recent
Private Const CSIDL_RECENT                  As Long = &H8

'<user name>\SendTo
Private Const CSIDL_SENDTO                  As Long = &H9

'<desktop>\Recycle Bin
Private Const CSIDL_BITBUCKET               As Long = &HA

'<user name>\Start Menu
Private Const CSIDL_STARTMENU               As Long = &HB

'logical "My Documents" desktop icon
Private Const CSIDL_MYDOCUMENTS             As Long = &HC

'"My Music" folder
Private Const CSIDL_MYMUSIC                 As Long = &HD

'"My Videos" folder
Private Const CSIDL_MYVIDEO                 As Long = &HE

'<user name>\Desktop
Private Const CSIDL_DESKTOPDIRECTORY        As Long = &H10

'My Computer
Private Const CSIDL_DRIVES                  As Long = &H11

'Network Neighborhood (My Network Places)
Private Const CSIDL_NETWORK                 As Long = &H12

'<user name>\nethood
Private Const CSIDL_NETHOOD                 As Long = &H13

Private Const CSIDL_FONTS                   As Long = &H14

Private Const CSIDL_TEMPLATES               As Long = &H15

'All Users\Start Menu
Private Const CSIDL_COMMON_STARTMENU        As Long = &H16

'All Users\Start Menu\Programs
Private Const CSIDL_COMMON_PROGRAMS         As Long = &H17

'All Users\Startup
Private Const CSIDL_COMMON_STARTUP          As Long = &H18

'All Users\Desktop

'<user name>\Application Data
Private Const CSIDL_APPDATA                 As Long = &H1A

'<user name>\PrintHood
Private Const CSIDL_PRINTHOOD               As Long = &H1B

'<user name>\Local Settings\Application Data (non roaming)
Private Const CSIDL_LOCAL_APPDATA           As Long = &H1C

'non localized startup
Private Const CSIDL_ALTSTARTUP              As Long = &H1D

'non localized common startup
Private Const CSIDL_COMMON_ALTSTARTUP       As Long = &H1E
Private Const CSIDL_COMMON_FAVORITES        As Long = &H1F
Private Const CSIDL_INTERNET_CACHE          As Long = &H20
Private Const CSIDL_COOKIES                 As Long = &H21
Private Const CSIDL_HISTORY                 As Long = &H22

'All Users\Application Data
Private Const CSIDL_COMMON_APPDATA          As Long = &H23

Private Const CSIDL_WINDOWS                 As Long = &H24

Private Const CSIDL_SYSTEM                  As Long = &H25

'C:\Program Files
Private Const CSIDL_PROGRAM_FILES           As Long = &H26

'C:\Program Files\My Pictures
Private Const CSIDL_MYPICTURES              As Long = &H27

Private Const CSIDL_PROFILE                 As Long = &H28

'x86 system directory on RISC
Private Const CSIDL_SYSTEMX86               As Long = &H29

'x86 C:\Program Files on RISC
Private Const CSIDL_PROGRAM_FILESX86        As Long = &H2A

'C:\Program Files\Common
Private Const CSIDL_PROGRAM_FILES_COMMON    As Long = &H2B

'x86 Program Files\Common on RISC

 'All Users\Templates
Private Const CSIDL_COMMON_TEMPLATES        As Long = &H2D

 'All Users\Documents
Private Const CSIDL_COMMON_DOCUMENTS        As Long = &H2E

'All Users\Start Menu\Programs\Administrative Tools
Private Const CSIDL_COMMON_ADMINTOOLS       As Long = &H2F

'<user name>\Start Menu\Programs\Administrative Tools
Private Const CSIDL_ADMINTOOLS              As Long = &H30

'Network and Dial-up Connections
Private Const CSIDL_CONNECTIONS             As Long = &H31

'All Users\My Music
Private Const CSIDL_COMMON_MUSIC            As Long = &H35

'All Users\My Pictures
Private Const CSIDL_COMMON_PICTURES         As Long = &H36

'All Users\My Video
Private Const CSIDL_COMMON_VIDEO            As Long = &H37

'Resource Directory
Private Const CSIDL_RESOURCES               As Long = &H38

'Localized Resource Directory
Private Const CSIDL_RESOURCES_LOCALIZED     As Long = &H39

'Links to All Users OEM specific apps
Private Const CSIDL_COMMON_OEM_LINKS        As Long = &H3A

'USERPROFILE\Local Settings\Application Data\Microsoft\CD Burning
Private Const CSIDL_CDBURN_AREA             As Long = &H3B

'unused                                     As Long = &H3C

'Computers Near Me (computered from Workgroup membership)
Private Const CSIDL_COMPUTERSNEARME         As Long = &H3D

'combine with CSIDL_ value to force folder creation in SHGetFolderPath()
Private Const CSIDL_FLAG_CREATE             As Long = &H8000&

'combine with CSIDL_ value to return an unverified folder path
Private Const CSIDL_FLAG_DONT_VERIFY        As Long = &H4000

'combine with CSIDL_ value to insure non-alias versions of the pidl
Private Const CSIDL_FLAG_NO_ALIAS           As Long = &H1000

'combine with CSIDL_ value to indicate per-user init (eg. upgrade)
Private Const CSIDL_FLAG_PER_USER_INIT      As Long = &H800

'mask for all possible flag values
Private Const CSIDL_FLAG_MASK               As Long = &HFF00&


PayPal Link
Make payments with PayPal - it's fast, free and secure!


Copyright 1996-2011 VBnet and Randy Birch. All Rights Reserved.
Terms of Use  |  Your Privacy


Hit Counter