Логин: Пароль:    Регистрация Всеми возможностями сайта можно пользоваться
только после авторизации.
   Забыли пароль?

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 3
Всего онлайн: 3
Зарегистрировано юзеров: 6501
Комментариев на сайте: 647
Новый юзер: KajinDral



Последние комментарии
c
Cmertb06 прокомментировал "Урок 1 - Инициализация OpenGL":
Возможно ли рисовать на экране? Например у Screen.Monitors[0] есть свойство Handle?
Aqel прокомментировал "Урок 71 - Работа с сжатыми файлами":
uses ...sevenzip, ... function ProgressCallback(sender: Pointer; total: boolean; value: int64): HRESULT; stdcall; begin if total then Form1.sprgrsbr1.Max:= value else Form1.sprgrsbr1.Position:= value; Result:= S_OK; end; function Decompress(FileName, DestDir, ArcFname: String; ArcDir: Boolean ): Boolean; var i: Integer; ItP: string; items: array[1..11] of Cardinal; sprgrsbr1: TsProgressBar; begin Result:= False; Application.ProcessMessages; try with CreateInArchive(CLSID_CFormat7z) do begin OpenFile(FileName); SetProgressCallback(sprgrsbr1, ProgressCallback); for i:= 1 to NumberOfItems - 1 do if not ItemIsFolder[i] then //ExtractItem(items[i], Steam, False); - как ей пользоваться в душе не понимаю... ExtractTo(DestDir); end; finally Result:= True; end; end;

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

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

Теперь нам необходимо записать в .ini файл пары =. В 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;
Теперь можно открыть Проводник и посмотреть в левой панели на значёк директории

Вот и всё, Удачи!

Источник: www.thedelphi.ru
Автор: Савельев Александр
Опубликовано: 13 Апреля 2014
Просмотров:


Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии.