Как получить иконку из .EXE или .DLL файла?

Процесс получения иконок из .EXE, .DLL или .ICO файлов полностью идентичен. Различие только в том, что в .ICO файле может храниться только одна иконка, а в .EXE и .DLL несколько. Для получения иконок из файлов, в модуле ShellAPI, есть функция:

function ExtractIcon(Inst: THandle; FileName: PChar; 
                             IconIndex: Word): HIcon;

где

Inst - указатель на приложение вызвавшее функцию,
FileName - имя файла из которого необходимо получить иконку,
IconIndex - номер необходимой иконки.

Если функция возвращает значение не равное нулю, то в файле есть следующая иконка.

Пример:

В данном примере в компонент Image1 выводится иконка запущенного файла.

USES ShellAPI; 
 
............ 
 
procedure TForm1.FormCreate(Sender: TObject); 
 VAR A: ARRAY [0..78] OF Char; 
 begin 
 
{Получение имени запущенного файла}
 StrPCopy(A, ParamStr(0));
 {Вывод на экран нулевой иконки из файла}
 Image1.Picture.Icon.Handle := ExtractIcon(HInstance, A, 0); 
 
end;

Последние комментарии

  • viagra the team http://gtviagracan.com - viagra for men for sale what is viagra used for viagra for sale - viagra without a prescription filitra
  • игровые автоматы без регистрации игровые автоматы играть бесплатно  игровые автоматы на деньги игровые автоматы играть бесплатно  игровые автоматы онлайн igrovieqlo игровые автоматы без регистрации игровые автоматы без регистрации игровые автоматы на деньги игровые автоматы бесплатно игровые...
  • Alien Robots r en av v rldens b https://1e6c1ee26.weebly.com/blog/cleopatra-spelautomater Novomatic casinon och dess b sta slots. BanksВ and financial institutions from https://8145fb20d.weebly.com/blog/svenska-casinon talar om n r man pratar slots p n tet. As we've mentioned with other games that...

Счетчики