Показать сообщение отдельно
  #1  
Старый 26.11.2011, 08:59
vmilyoshin vmilyoshin вне форума
Прохожий
 
Регистрация: 26.10.2011
Сообщения: 15
Репутация: 10
По умолчанию Создание ярлыков на рабочем столе и в меню пуск->все программы

Привет знатоки кодинга! Есть нибольшой вопрос. Я делаю инсталятор для своей проги. Чтобы при установки создать ярлыки применяю процедуру CreateLink.

Код:
procedure CreateLink(WorkDir,FileName,Arguments,LinkName:String);
var
  MyObject : IUnknown;
  MySLink : IShellLink;
  MyPFile : IPersistFile;
  WFileName : WideString;
begin
  MyObject := CreateComObject(CLSID_ShellLink);
  MySLink := MyObject as IShellLink;
  MyPFile := MyObject as IPersistFile;
  with MySLink do
  begin
  SetArguments(PChar(Arguments));
  SetPath(PChar(FileName));
  SetWorkingDirectory(PChar(WorkDir));
  end;
  if not DirectoryExists(ExtractFiledir(LinkName)) then
  CreateDir(ExtractFiledir(LinkName));
  WFileName := LinkName;
  MyPFile.Save(PWChar(WFileName),False);
end;

Способ применения при установки программы:
Код:
CreateLink('', Edit1.Text+'\Auto.exe', '', GetSpecialFolderPath(CSIDL_COMMON_DESKTOPDIRECTORY)+'\Авто.lnk');

Кто нибудь мне толком объяснит для чего нужны первый и третий параметр CreateLink. Что я только туда не вписывал с ярлыком ни чего не менялось. Да, кстати, как сделать чтобы при наведении мышки на ярлык не показывался бы путь к этому файлу. Спасибо. Надеюсь на вашу помощь.
Ответить с цитированием