Top.Mail.Ru
Ответы

Pascal ABC. Как установить иконку программы из shell32.dll?

В Delphi это можно сделать через loadlibrary, но в Pascal ABC такого нет. Для АВС нашел только как обычную .ico приделать, а нужно из библиотеки

1234567
 var
  i: Form;
begin
  i:= new Form();
  i.icon:= new icon('путь к файлу .ico');
  Application.Run(i);
end. 
По дате
По рейтингу
Аватар пользователя
Новичок

Можно подключить внешнюю функцию загрузки иконок, но что там дальше делать в этом "специфическом" языке, нужно разбираться:

123456789101112
 uses 
  graphabc; 
 
function getIcon (hInst: integer; var pszShell32: string; iIcon: integer): integer;  
  external 'shell32.dll' name 'ExtractIconA'; 
   
var 
  shell32: string = 'shell32.dll'; 
   
begin 
  var hIcon := getIcon (0, shell32, 1); 
end. 
Аватар пользователя
Оракул

Вытащи нужную из shell32 (dll - архив, один из способов взять 7zip) и загрузи. Быстрее получится, чем искать корректное решение. На C# примеров много. Как их для abc.net приделать - отдельная песня