Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.03;
Скачать: CL | DM;

Вниз

ExtractIcon и *.LNK файлы.   Найти похожие ветки 

 
demonyator ©   (2003-05-01 03:12) [0]

Как вытянуть иконку из LNK файла? ExtractIcon и ExtractAssociatedIcon вытягивают иконку из самого файла, вне зависимости от иконки, присвоенной LNK файлу. Судя по всему, винда просто тянет иконку из файла, на который указывает LNK. Если это так, то тогда помогите решить задачу отображения иконки самого LNK....


 
Набережных С.   (2003-05-01 09:49) [1]


function TAddGroupForm.GetCurentIcon(const Link: WideString; out IconSource: string;
out IconIndex: integer): boolean;
var
Lnk:IShellLink;
Prf: IPersistFile;
FD: TWin32FindData;
HRes: HResult;
begin
Result:=false;
try
Lnk:=CreateComObject(CLSID_ShellLink) as IShellLink;
Prf:=Lnk as IPersistFile;
HRes:=Prf.Load(PWideChar(Link), STGM_READ);
if HRes = S_OK then
begin
SetLength(IconSource, MAX_PATH);
OleCheck(Lnk.GetIconLocation(@IconSource[1], MAX_PATH, IconIndex));
Result:=Length(PChar(IconSource)) > 0;
if not Result then
begin
OleCheck(Lnk.GetPath(@IconSource[1], MAX_PATH, FD, 0));
Result:=Length(PChar(IconSource)) > 0;
IconIndex:=0;
end;
if Result then IconSource:=PChar(IconSource) else IconSource:="";
end else
begin
SetLastError(HRes);
RaiseLastWin32Error;
end;
except
ShowException(ExceptObject, ExceptAddr);
end;
end;



Страницы: 1 вся ветка

Текущий архив: 2003.07.03;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.017 c
7-7737
Sniffer
2003-04-18 14:09
2003.07.03
Опять о Ctrl+Alt+Del, Alt+Tab...


1-7415
victor_ch
2003-06-23 09:40
2003.07.03
как правой клавишей мыши перейти на нужный узел в TreeView


4-7754
il
2003-04-29 17:01
2003.07.03
Как узнать, есть ли в трее иконка чужого приложения?


7-7746
Alex000
2003-04-20 23:51
2003.07.03
Запуск программы


14-7678
Кен
2003-06-16 02:40
2003.07.03
Ищу функции для приближённого сравнения картинок.