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

Вниз

Как выдрать иконку из exe-шника и вставить ее в .lnk   Найти похожие ветки 

 
ZeroDivide ©   (2003-05-15 14:33) [0]

И чтобы работало под всеми виндами. Я уже задолбался это делать.

Так я ее создаю:

Procedure CreateLink(const PathObj, PathLink, Desc, Param, WorkDir: string);
var
IObject: IUnknown;
SLink: IShellLink;
PFile: IPersistFile;
begin
s := ExePath;
Delete(s,1,Length(NetPath));
Insert(LocalPath,s,1);
IObject := CreateComObject(CLSID_ShellLink);
SLink := IObject as IShellLink;
PFile := IObject as IPersistFile;
with SLink do
begin
SetArguments(PChar(Param));
SetDescription(PChar(Desc));
SetPath(PChar(PathObj));
SetWorkingDirectory(PChar(WorkDir));
SetIconLocation(PChar(s), 0);
end;
PFile.Save(PWideChar(WideString(PathLink)), False);
end;

Все работает под 98-ми, но под 2000 начинаются глюки. Выдирается не та иконка, что установлена в опциях проекта, а стандартная дельфяровская. Где стоит сервиспак 3 там выдирается нормальная иконка, но тоже не всегда, как оказалось сегодня. На 3-м сервиспаке не заработало, а на 2-м все отлично.

Я скоро крышу потеряю от таких фокусов, что мне делать а?


 
ZeroDivide ©   (2003-05-16 09:38) [1]

up


 
Дмитрий К.К. ©   (2003-05-16 09:44) [2]

Вам бы, батенька, почитать про формат LNK на http://www.wotsit.org/



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
11-2829
Kirill
2002-08-16 22:39
2003.06.02
SysUtils


1-2883
qwerty2
2003-05-22 16:20
2003.06.02
Несовместисые типы. Почему?


1-2895
Duke DEE
2003-05-21 20:22
2003.06.02
ValueListEditor


14-3116
Axis_of_Evil
2003-05-14 14:03
2003.06.02
stdcall


3-2741
Patrick
2003-05-12 18:50
2003.06.02
Cannot transliterate character between character sets.