Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Windows Новый топик    Ответить
 Переменная окружения в пути к приложению в свойствах ярлыка  [new]
luigi
Member

Откуда: СССР (РФ-ЛНР)
Сообщений: 391
Добрый день.

Имеем ярлык созданный один раз следующим скриптом:
Set WshShell = WScript.CreateObject("WScript.Shell")
Set oShellLink = WshShell.CreateShortcut("Приложение.lnk")
oShellLink.TargetPath = "%ENV_VAR%"\Application.exe
oShellLink.WindowStyle = 1
oShellLink.WorkingDirectory = "%ENV_VAR%"
oShellLink.Save

Создавался на машине, где переменная окружения установлена. Создается корректно.
После этого ярлык вместе с приложением был выложен на сетевой ресурс.

На рабочих станциях пользователей есть некая оболочка, через которую администратор
производит подключение пользователя к задачам. При подключении пользователя к задаче
приложение и ярлык копируются из сетевого хранилища на рабочую станцию.
Ярлык копируется в C:\Users\Public\Desktop.

При этом происходит неприятность - к пути в ярлыке ОС добавляет путь к рабочему столу
текущего пользователя (т.е. администратора, который выполняет установку):

C:\Users\IvanovII\Desktop\%ENV_VAR%\Application.exe

Возможно ли это устранить? Или что нужно изменить, чтобы этого избежать?

PS Переменная окружения к моменту копирования ярлыка и приложения также создана в системных
переменных ОС на рабочем месте пользователя. Копирование ярлыка и приложения по сети уже
происходит с использованием этой переменной. Копирование осуществляется функцией ShFileOperation.
В пути для %ENV_VAR% есть пробелы, поэтому она заключена в кавычки.
22 май 18, 09:17    [21427713]     Ответить | Цитировать Сообщить модератору
Все форумы / Windows Ответить