Базы данныхИнтернетКомпьютерыОперационные системыПрограммированиеСетиСвязьРазное
Поиск по сайту:
Подпишись на рассылку:

Назад в раздел

Как в Delphi изменить иконку у директории.

div.main {margin-left: 20pt; margin-right: 20pt}Как в Delphi изменить иконку у директории.

Компилятор: Delphi 4.x, 5.x

Обычно, для изменения вида папок в Проводнике используется файл desktop.ini.

Сперва необходимо создать файл Desktop.ini и поместить в ту директорию, иконку которой мы хотим изменить. В программе для этого можно воспользоваться классом TIniFile и передать в него путь директории.

Теперь нам необходимо записать в .ini файл пары <key>=<value>. В Desktop.ini эти пары выглядят следующим образом (самое главное, это указать иконку и её индекс):

[.ShellCLassInfo] IconFile=C:LocationofFolder.ico IconIndex=0 InfoTip=Delphi is the coolest IDE ever!

Значение IconFile это путь к .dll, .ico, или .exe. В Delphi это выглядит так:

with iniFile do begin //Следующие строки меняют иконку WriteString('.ShellClassInfo', 'IconFile', editIconPath.Text); WriteString('.ShellClassInfo', 'IconIndex', editIconIndex.Text); WriteString('.ShellClassInfo', 'InfoTip', 'Use Delphi because it rocks!'); UpdateFile; end;

Теперь, когда файл Desktop.ini создан, необходимо изменить атрибуты папки и добавить системный флаг. Чтобы иконка отображалась правильно, желательно установить системный флажёк как для папки, так и для её родителя. Для установки атрибутов воспользуемся функцией SetFileAttribue():

//Устанавливаем системные атрибуты для папки и её родителя SetFileAttributes(PChar(edFolderPath.Text), FILE_ATTRIBUTE_SYSTEM); if Length(edFolderPath.Text) > 3 then //Если директория не корневая... begin //функция LastChar возвращает индекс последнего вхождения символа //в строку. Этот способ позволяет быстро получить путь родительской //директориии, если, конечно, директория не является корневой на диске.. tempDir := Copy( edFolderPath.Text, 1,LastChar(edFolderPath.Text, '')-1); SetFileAttributes(PChar(tempDir), FILE_ATTRIBUTE_SYSTEM); end;

Теперь можно открыть Проводник и посмотреть в левой панели на значёк директории.



  • Главная
  • Новости
  • Новинки
  • Скрипты
  • Форум
  • Ссылки
  • О сайте




  • Emanual.ru – это сайт, посвящённый всем значимым событиям в IT-индустрии: новейшие разработки, уникальные методы и горячие новости! Тонны информации, полезной как для обычных пользователей, так и для самых продвинутых программистов! Интересные обсуждения на актуальные темы и огромная аудитория, которая может быть интересна широкому кругу рекламодателей. У нас вы узнаете всё о компьютерах, базах данных, операционных системах, сетях, инфраструктурах, связях и программированию на популярных языках!
     Copyright © 2001-2024
    Реклама на сайте