Читаем Delphi. Трюки и эффекты полностью

Листинг 4.15.

Использование функции GetSpecialDir

procedure TForm3.Button1Click(Sender: TObject);

var

item: TListItem;

begin

lvwPathes.Clear;

//Определение путей некоторых системных каталогов

//..Рабочий стол

item := lvwPathes.Items.Add();

item.Caption := \'Рабочий стол\

item.SubItems.Insert(0, GetSpecialDir(CSIDL_DESKTOPDIRECTORY));

//..Избранное

item := lvwPathes.Items.Add();

item.Caption := \'Избранное\

item.SubItems.Insert(0, GetSpecialDir(CSIDL_FAVORITES));

//..Шрифты

item := lvwPathes.Items.Add();

item.Caption := \'Шрифты\

item.SubItems.Insert(0, GetSpecialDir(CSIDL_FONTS));

//..Мои документы

item := lvwPathes.Items.Add();

item.Caption := \'Мои документы\

item.SubItems.Insert(0, GetSpecialDir(CSIDL_PERSONAL));

//..Последние документы

item := lvwPathes.Items.Add();

item.Caption := \'Последние документы\

item.SubItems.Insert(0, GetSpecialDir(CSIDL_RECENT));

//..История

item := lvwPathes.Items.Add();

item.Caption := \'История\

item.SubItems.Insert(0, GetSpecialDir(CSIDL_HISTORY));

//..Отправить

item := lvwPathes.Items.Add();

item.Caption := \'Отправить\

item.SubItems.Insert(0, GetSpecialDir(CSIDL_SENDTO));

//..Меню Пуск

item := lvwPathes.Items.Add();

item.Caption := \'Пуск\

item.SubItems.Insert(0, GetSpecialDir(CSIDL_STARTMENU));

//..Меню Программы

item := lvwPathes.Items.Add();

item.Caption := \'Программы\

item.SubItems.Insert(0, GetSpecialDir(CSIDL_PROGRAMS));

//..Меню Автозагрузка

item := lvwPathes.Items.Add();

item.Caption := \'Автозагрузка\

item.SubItems.Insert(0, GetSpecialDir(CSIDL_STARTUP));

//..Папка с шаблонами документов

item := lvwPathes.Items.Add();

item.Caption := \'Шаблоны\

item.SubItems.Insert(0, GetSpecialDir(CSIDL_TEMPLATES));

end;

Результат работы процедуры из листинга 4.14 приводится на рис. 4.3.

Рис. 4.3. Прочие системные пути Windows

В приведенной в листинге 4.15 процедуре определены не все пути, доступные с использованием функции SHGetSpecialFolderPath. Дело в том, что существует ряд виртуальных (не существующих реально на диске) папокМой компьютер, Принтеры, Сетевое окружение и т д.

Для некоторых упоминаемых в листинге 4.15 папок есть также аналогичные папки, содержимое которых доступно всем пользователям:

• CSIDL_COMMON_DESKTOPDIRECTORY – содержимое этой папки отображается на Рабочем столе всех пользователей;

• CSIDL_COMMON_DOCUMENTS – общие документы;

• CSIDL_COMMON_FAVORlTES—общие элементы папки Избранное;

• CSIDL_COMMON_PROGRAMS – общие для всех пользователей программы (пункт Программы меню Пуск);

• CSIDL_COMMON_STARTMENU – общие элементы, отображаемые вменю Пуск;

• CSIDL_COMMON_STARTUP – общие элементы меню Автозагрузка;

• CSIDL_COMMON_TEMPLATES – папка с общими для всех пользователей шаблонами документов.

...

Перейти на страницу:

Похожие книги

1001 совет по обустройству компьютера
1001 совет по обустройству компьютера

В книге собраны и обобщены советы по решению различных проблем, которые рано или поздно возникают при эксплуатации как экономичных нетбуков, так и современных настольных моделей. Все приведенные рецепты опробованы на практике и разбиты по темам: аппаратные средства персональных компьютеров, компьютерные сети и подключение к Интернету, установка, настройка и ремонт ОС Windows, работа в Интернете, защита от вирусов. Рассмотрены не только готовые решения внезапно возникающих проблем, но и ответы на многие вопросы, которые возникают еще до покупки компьютера. Приведен необходимый минимум технических сведений, позволяющий принять осознанное решение.Компакт-диск прилагается только к печатному изданию книги.

Юрий Всеволодович Ревич

Программирование, программы, базы данных / Интернет / Компьютерное «железо» / ОС и Сети / Программное обеспечение / Книги по IT
Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ
Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ

Эта книга представляет собой перевод третьего издания американского бестселлера Effective C++ и является руководством по грамотному использованию языка C++. Она поможет сделать ваши программы более понятными, простыми в сопровождении и эффективными. Помимо материала, описывающего общую стратегию проектирования, книга включает в себя главы по программированию с применением шаблонов и по управлению ресурсами, а также множество советов, которые позволят усовершенствовать ваши программы и сделать работу более интересной и творческой. Книга также включает новый материал по принципам обработки исключений, паттернам проектирования и библиотечным средствам.Издание ориентировано на программистов, знакомых с основами C++ и имеющих навыки его практического применения.

Скотт Мейерс , Скотт Майерс

Программирование, программы, базы данных / Программирование / Книги по IT