Главная страница
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.019 c
14-3125
Skier
2003-05-12 16:42
2003.06.02
---|Ветка была без названия|---


3-2826
Cranium
2003-05-12 20:58
2003.06.02
Как в клиентском приложении корректно обработать ситуацию ...


1-2870
kba
2003-05-21 17:23
2003.06.02
Помогите разобраться, исчезает mergе ное меню (+)


3-2828
Viktor
2003-05-15 16:12
2003.06.02
Повторно не выполняется запрос


6-3040
Pokotskiy
2003-03-31 13:37
2003.06.02
Services+Socket?