Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.10.2007, 01:13   #21
Алексей_C
Пользователь
 
Аватар для Алексей_C
 
Регистрация: 27.10.2007
Сообщений: 40
По умолчанию

А у вас какая версия Delphi?
Алексей_C вне форума Ответить с цитированием
Старый 31.10.2007, 01:16   #22
Slovinsky
Пользователь
 
Регистрация: 26.10.2007
Сообщений: 79
По умолчанию

7-я. Это не в этом дело. Дело в вашем ресурсе из exe. Кстати, вы пишите, что как-то получаете сами иконку, только она 16-цветная. Конвертация в 16 цветов по идее происходит только при сохранении, так что если вам удалось получить дескриптор иконки своим способом, просто передайте его в WriteIcon32.
Slovinsky вне форума Ответить с цитированием
Старый 27.12.2008, 23:34   #23
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Приветствую. Дело обстоит практически так же. Проблема вот в чем, вытаскивать иконку причем самого большого размер которая имеется в наличии из любого файла в системе. Следующий код работает только или 16 или 32 пикселя в размере. Хотелось бы получать самые большие иконки приложений. У кого какие предложения? Обрыскал интернет незнаю уже как это возможно. Не ужели прийдется писать велосипед )) разгребать формат ico. Лень как то, хотя реально.

Код:
function TForm1.ExtractIcon(const FileName: String): TIcon;
var
  ImageList: TImageList;
  FileInfo: TSHFileInfo;
begin
  ImageList := TImageList.Create(NIL);
  ImageList.Height := 32;
  ImageList.Width := 32;
  FillChar(FileInfo, Sizeof(FileInfo), 0);
  ImageList.ShareImages := True;
  ImageList.Handle := SHGetFileInfo(
    PChar(FileName),
    SFGAO_SHARE,
    FileInfo,
    SizeOf(FileInfo),
    SHGFI_LARGEICON or SHGFI_SYSICONINDEX
  );
  Result := TIcon.Create;
  ImageList.GetIcon(FileInfo.iIcon, Result);
  ImageList.Free;
end;
BOBAH13 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как программно извлечь иконку из exe файла Altera Win Api 3 19.07.2008 21:39
Как извлечь имя скачиваемого файла Crazyman Работа с сетью в Delphi 0 01.07.2008 02:34
Извлечь путь из EXE NeiL Общие вопросы Delphi 3 21.05.2008 18:44
Извлечь имена приложений NeiL Win Api 3 07.05.2008 14:33
Извлечь песни из NFS Pro street DeN1308 Софт 0 24.11.2007 15:38