Форум: "WinAPI";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
ВнизИзвлечь иконку по расширению Найти похожие ветки
← →
Navi © (2004-03-28 11:00) [0]Уважаемые мастера!
Мне необходимо извлечь иконку и имя ассоциированного приложения, имея только расширение файла, т.е. ф-я ExtractAssociatedIcon не подходит. Как это можно сделать?
Спасибо.
← →
Юрий Федоров © (2004-03-28 11:21) [1]function GetShellFileIcon(const FileName : string) : HICON;
var SYSIL : THandle;
SFI : TSHFileInfo;
begin
Result:=0;
FillChar(SFI, SizeOf(SFI), 0);
SysIL := SHGetFileInfo(PChar(FileName), 0, SFI, SizeOf(SFI), SHGFI_SYSICONINDEX or SHGFI_SMALLICON);
if SysIL <> 0
then Result:=ImageList_GetIcon(SysIL, SFI.iIcon, 0)
else RaiseLastOSError;
end;
← →
Navi © (2004-03-30 20:40) [2]Да не работает это только по расширению. Может я не то спросил - мне недо иконки всех зарегиситированных типов.
← →
TUser © (2004-03-30 21:02) [3]Тогда надо пробежаться по всем ключам из HKCR/.... Точнее - не по всем, а по тем, которые описывают зарегистрированные типы файлов.
← →
Dimaxx © (2004-03-30 22:29) [4]Используйте ExtractAssociatedIcon из Shellapi - возвращает HIcon.
← →
Dimaxx © (2004-03-30 22:30) [5]Не до конца прочитал, сорри...
← →
Navi © (2004-04-03 20:12) [6]TUser - а как по ним пробежаться-то (В TRegistry не нашел как узнать кол-во "записей" у ключа)
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.034 c