Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Как создать ссылку (ShortCut) на файл (.lnk)?

Delphi , Файловая система , Ярлыки

Code:

uses ShlObj, ActiveX, ComObj;
...
{©Drkb v.3(2007): www.drkb.ru,
®Vit (Vitaly Nevzorov) - nevzorov@yahoo.com}
 
procedure CreateShortCut(ShortCutName, Parameters, FileName: string);
var ShellObject: IUnknown;
ShellLink: IShellLink;
PersistFile: IPersistFile;
FName: WideString;
begin
ShellObject := CreateComObject(CLSID_ShellLink);
ShellLink := ShellObject as IShellLink;
PersistFile := ShellObject as IPersistFile;
with ShellLink do
   begin
     SetArguments(PChar(Parameters));
     SetPath(PChar(FileName));
     SetWorkingDirectory(PChar(extractfilepath(FileName)));
     FName := ShortCutName;
     PersistFile.Save(PWChar(FName), False);
   end;
end;

Автор: Vit (www.delphist.com, www.drkb.ru, www.unihighlighter.com, www.nevzorov.org)

Взято с Vingrad.ru http://forum.vingrad.ru

Код, который вы предоставили, - это процедура на языке Delphi, которая создает файл shortcut (.lnk) на компьютере пользователя. Она использует COM-объекты из Shell API для создания и сохранения shortcut.

Вот шаг за шагом, что код делает:

  1. Он инициализирует три COM-объекта:
    • ShellObject: Объект интерфейса IShellLink, представляющий ссылку на shell.
    • ShellLink: Указатель на интерфейс IShellLink, каст из ShellObject.
    • PersistFile: Объект интерфейса IPersistFile, предоставляющий методы для сохранения и загрузки данных файла.
  2. Он устанавливает свойства на объекте ShellLink:
    • SetArguments: Устанавливает аргументы, передаваемые shortcut (например, параметры командной строки).
    • SetPath: Устанавливает путь к целевой файл или директории.
    • SetWorkingDirectory: Устанавливает рабочую директорию для shortcut.
  3. Он устанавливает имя файла shortcut с помощью переменной FName.
  4. Наконец, он сохраняет данные shortcut в файле с помощью метода PersistFile.Save.

Чтобы использовать эту процедуру, вы должны вызвать ее с тремя строковыми аргументами:

  • ShortCutName: Желаемое имя для файла shortcut (например, "Мой Shortcut.lnk").
  • Parameters: Любые параметры командной строки или аргументы, которые нужно передать целевой файл или приложению.
  • FileName: Путь и имя целевого файла или директории.

Например:

CreateShortCut('Мой Shortcut', 'arg1 arg2', 'C:\Путь\К\Файлу.txt');

Это создаст файл shortcut с именем "Мой Shortcut.lnk" в текущей рабочей директории, с аргументами командной строки "arg1 arg2", и установит целевой путь на "C:\Путь\К\Файлу.txt".

Обратите внимание, что для использования этого кода вам нужно включить в ваш проект Delphi units ShlObj, ActiveX и ComObj.

Создать ссылку на файл (.lnk) можно используя компонент ShlObj и создавая объект IShellLink, который позволяет задать параметры и путь к файлу, а также сохранять его в файл с указанным именем.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Ярлыки ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-01-28 06:52:27/0.0032930374145508/0