Створення ярликів під час встановлення ОС
До програм, скопійованих за допомогою $OEM$ папок, нерідко доводиться створювати ярлики з командного рядка. Крім того, у деяких випадках потрібно створити ярлик із певними параметрами для запуску програми. Для створення ярликів існують різні методи.
Утиліта NirCmd
Утиліта NirCmd допоможе створити ярлик. Команда
nircmd.exe shortcut "%ProgramFiles%\Mozilla Thunderbird\thunderbird.exe" "
Створює ярлик Thunderbird на робочому столі з ім'ям Home, програма буде запущена з профілемHome ( -p Home є параметром запуску виконуваного файлу).
За допомогою Nircmd можна зробити дуже багато операцій, список яких не обмежується домашньою сторінкою. У CHM довідці все докладно описано.
Засновано на повідомленні amel27 у форумі автоустановки.
Створення ярликів можна легко реалізувати скриптом AutoIt (v.3). Додаю варіант скрипта, який насправді лише оболонка над командою FileCreateShortcut. Залишилося скомпілювати EXE-файл і вперед.
Список ключів в основному отриманий з довідки до AutoIt:
/f Докладніше і файл файлу файлу для створення шорту до. /l Докладно та файл файлу шорти. /w Working directory. [optional] /a Additional file arguments. [optional] /d File Description. [optional] /i Full Path/File name of icon to use. [optional]
shortcut.exe /f:"%ProgramFiles%\Ahead\Nero\nero.exe" /a:"/w" /l:"%ALLUSERSPROFILE%\Desktop\Nero Express"
Приклад сценаріїв VBScript для створення ярликів
Варіант 1 (дякую, Diamond)
Варіант 2, універсальний (дякую, deepred)
Використання скрипта, збереженого, наприклад, з ім'ям MKLink.vbs:
Саморозпаковується (SFX) архів
Якщо установка програми ведеться з SFX архіву, можна використовувати можливості архіватора для створення ярликів.
Path=%systemdrive%\Program Files\AIMP\ SavePath Silent=1 Overwrite=1 Shortcut=D, "cAIMP.exe", "", "Аналог winamp", "AIMP .lnk" Shortcut=P, "cAIMP.exe", "", "Аналог winamp", "AIMP.lnk"
- Silent=1 - включений тихий режим
- Overwrite=1 - увімкнено перезапис існуючих файлів
- Shortcut=D - ярлик для робочого столу
- Shortcut=P - ярлик для Меню пуск
SFX-модуль архіватора 7-Zip не вміє створювати ярлики, але є чудовий модифікований модуль, який легко справляється із цим завданням. Все докладно розписано в довідці модуля, де є приклад, що включає створення ярликів.