CSIDL

CSIDL - уникальный идентификатор для специальных папок, часто используемых в Windows. Специальные папки используются операционной системой для особых случаев. Эти папки могут иметь разные названия на разных компьютерах, но благодаря идентификатору легко могут быть обнаружены. Специальными папками являются такие папки как Мои документы, Корзина, Program Files и др. Эти папки могут быть как физическими, так и виртуальными

В некоторых случаях CSIDL можно комбинировать со следующими флагами

CSIDL_FLAG_CREATE= &H8000
Если специальной папки не существует, то создать ее путем объединения этого значения с другим значением CSIDL(с помощью Or или "+")
CSIDL_ADMINTOOLS= &H30
Папка для хранения средств администрирования индивидуального пользователя. Программа Microsoft Management Concole сохраняет параметры настройки в этой папке и задает их связь с пользователем
CSIDL_ALTSTARTUP= &H1D
Папка для программ автоматической загрузки
CSIDL_APPDATA= &H1A
Папка для хранения данных приложений(обычно ..\Application Data)
CSIDL_BITBUCKET= &HA
Виртуальная папка, содержащая объекты из папки Корзина
CSIDL_COMMON_ADMINTOOLS= &H2F
Папка для хранения средств администрирования для всех пользователей компьютера
CSIDL_COMMON_APPDATA= &H23
Папка для хранения данных приложений(обычно ..\Application Data), общих для всех пользоваетей
CSIDL_COMMON_ALTSTARTUP= &H1D
Windos NT, 2000: Папка программ автозагрузки для всех пользователей
CSIDL_COMMON_DESKTOPDIRECTORY= &H19
Папка, содержащая файлы и папки, которые появляются на Рабочем столе для всех пользователей
CSIDL_COMMON_DOCUMENTS= &H2E
Папка, содержащая документы для всех пользователей
CSIDL_COMMON_FAVORITES= &H1F
Windows NT, 2000: Папка, содержащая избранные файлы
CSIDL_COMMON_PROGRAMS= &H17
Windows NT, 2000: Папка, содержащая группы программ в меню Программы кнопки Пуск
CSIDL_COMMON_STARTMENU= &H16
Windows NT, 2000: Папка, содержащая группы программ в Главном меню кнопки Пуск для всех пользователей
CSIDL_COMMON_STARTUP= &H18
Windows NT, 2000: Папка, содержащая группы программ в меню Программы кнопки Пуск для всех пользователей
CSIDL_COMMON_TEMPLATES= &H2D
Windows NT, 2000: Папка, содержащая шаблоны для всех пользователей
CSIDL_CONTROLS= &H3
Виртуальная папка, содержащая иконки Панели Управления
CSIDL_COOKIES= &H21
Папка, используемая Internet Explorer для хранения cookies
CSIDL_DESKTOP= &H0
Виртуальная папка Рабочего стола, являющая корневой папкой для пространства имен
CSIDL_DESKTOPDIRECTORY= &H10
Папка, содержащая файлы и папки, которые появляются на Рабочем столе(не путать с папкой Рабочего стола)
CSIDL_DRIVES= &H11
Виртуальная папка Мой компьютер, содержащая данные компьютера - устройства, принтеры, Панель Управления
CSIDL_FAVORITES= &H6
Папка Избранное
CSIDL_FONTS= &H14DD
Виртуальная папка Fonts для хранения шрифтов
CSIDL_HISTORY= &H22
Папка History, содержащая ссылки на страницы, просмотренные за последние дни
CSIDL_INTERNET= &H1
Виртуальная папка Internet (связана со значком Internet Explorer на Рабочем столе)
CSIDL_INTERNET_CACHE= &H20
Папка для временных файлов Internet
CSIDL_LOCAL_APPDATA= &H1C
Internet Explorer 5.0 или выше: Папка для хранения данных приложений
CSIDL_MYPICTURES= &H27
Internet Explorer 5.0 или выше: Папка My Pictures
CSIDL_NETHOOD= &H13
Папка Nethood (используется для содержания объектов, находящихся в Network Neighborhood)
CSIDL_NETWORK= &H12
Папка Network Neighborhood
CSIDL_PERSONAL= &H5
Папка Мои документы
CSIDL_PRINTERS= &H4
Виртуальная папка Принтеры(в папке Мой компьютер)
CSIDL_PRINTHOOD= &H1B
Папка PrintHood (содержит ссылки к принтерам)
CSIDL_PROFILE= &H28
Internet Explorer 5.0 и выше: Папка пользователя
CSIDL_PROGRAM_FILES= &H26
Internet Explorer 5.0 и выше: Папка Program Files
CSIDL_PROGRAM_FILES_COMMON= &H2B
Windows NT, 2000: Папка для компонентов, которые относятся к нескольким приложениям. Находится в папке Program Files
CSIDL_PROGRAM_FILES_COMMONX86= &H2C
Windows 2000: The x86 Common folder under Program Files for RISC systems.
CSIDL_PROGRAM_FILESX86= &H2A
Windows 2000: Папка x86 Program Files для RISC систем
CSIDL_PROGRAMS= &H2
Папка Программы в папке Главное меню
CSIDL_RECENT= &H8
Папка Recent (содержит последние из открывавшихся документов)
CSIDL_SENDTO= &H9
Папка Send To (содержит команды меню Отправить)
CSIDL_STARTMENU= &HB
Папка Главное меню
CSIDL_STARTUP= &H7
Папка Автозагрузка для программ, которые автоматически загружаются при запуске Windows
CSIDL_SYSTEM= &H25
Internet Explorer 5.0 и выше: Системная папка, содержащая системные файлы
CSIDL_SYSTEMX86= &H29
Windows 2000: Системная папка x86 на RISC системах
CSIDL_TEMPLATES= &H15
Папка, в которой хранятся шаблоны документов
CSIDL_WINDOWS= &H24
Internet Explorer 5.0 и выше: Папка Windows

Используется в

SHGetFolderLocation, SHGetFolderPath, SHGetSpecialFolderLocation, SHGetSpecialFolderPath