Создание ярлыка для конкретного файла 2Delphi , Файловая система , Ярлыки
Автор: Lipskiy { **** UBPFD *********** by delphibase.endimus.com **** >> Создание ярлыка для конкретного файла (2) Процедура создает ярлык к файлу FilePath, располагает ярлык в папке ShortcutPath, заносит в ярлык поля: рабочей директории WorkDir, текстового описания Description, параметров запуска Params. Зависимости: ShlObj, ActiveX, ComObj Автор: lipskiy, lipskiy@mail.ru, ICQ:51219290, Санкт-Петербург Copyright: Из FAQ Дата: 10 мая 2002 г. ***************************************************** } procedure CreateShortcut(const FilePath, ShortcutPath, WorkDir, Description, Params: string); var obj: IUnknown; isl: IShellLink; ipf: IPersistFile; begin obj := CreateComObject(CLSID_ShellLink); isl := obj as IShellLink; ipf := obj as IPersistFile; with isl do begin SetPath(PChar(FilePath)); SetArguments(PChar(Params)); SetDescription(PChar(Description)); SetWorkingDirectory(PChar(WorkDir)); end; ipf.Save(PWChar(WideString(ShortcutPath)), False); end; Пример использования: // пример создания ярлыка на рабочем столе var UserDesktop: string; R: TRegIniFile; begin R := TRegIniFile.Create(''); with R do begin RootKey := HKEY_CURRENT_USER; UserDesktop := ReadString('Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders', 'desktop', ''); Free; end; CreateShortcut(Application.ExeName, UserDesktop + '\Название ярлыка.lnk', '', '', ''); end; Программный код на языке Delphi для создания ярлыка к конкретному файлу! Вот разбивка того, что код делает: Процедура Принимает пять строковых параметров:
Процедура использует три объекта COM:
Вот, что код делает:
Пример использования Пример создает ярлык на десктопе пользователя с именем "Название ярлыка.lnk". Ярлык указывает на исполняемый файл текущего приложения, и не имеет рабочего каталога, описания или параметров. Предложения по улучшению
В целом, этот код предоставляет хороший старт для создания ярлыков в Delphi. С некоторыми изменениями и улучшениями он может стать еще более эффективным и надежным. Процедура создания ярлыка для конкретного файла на языке Delphi с использованием интерфейса IShellLink и IPersistFile. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |