Главная страница
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.012 c
1-2935
_stealth_
2003-05-20 19:15
2003.06.02
несворачиваемое окно (не реагирующее на Win+D)


7-3188
alexts
2003-04-01 11:47
2003.06.02
Набор номера через модем


14-3063
Taktik
2003-05-16 04:27
2003.06.02
EhLib а есть ли по нему русский мануал... ну или хелп


1-2957
alpa
2003-05-21 10:13
2003.06.02
Реестр


4-3199
Nic2
2003-04-02 17:28
2003.06.02
Компоненты и процессы