Форум: "WinAPI";
Текущий архив: 2003.07.03;
Скачать: [xml.tar.bz2];
Вниз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 вся ветка
Форум: "WinAPI";
Текущий архив: 2003.07.03;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.008 c