Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
14-3156
АлеКо
2003-05-15 03:53
2003.06.02
InstallShield


14-3159
Checist [root]
2003-05-09 15:19
2003.06.02
WinAPI


4-3207
Stexen
2003-04-02 18:25
2003.06.02
Запуск exe-файла.


14-3091
Aferist
2003-05-13 18:32
2003.06.02
Катриджи от canon


3-2794
moore
2003-05-14 15:17
2003.06.02
пример БД




   Наверх