@ansgar-wiechers — это спот о ExpandEnvironmentStrings()
, поскольку некоторые другие ответы предлагали его использовать, но документация ясна;
От MSDN — метод запуска (узел сценариев Windows)
Метод запуска возвращает целое число. Метод Run запускает программу, работающую в новом процессе Windows. Вы можете сделать так, чтобы ваш сценарий дождался завершения выполнения программы, прежде чем продолжить. Это позволяет запускать сценарии и программы синхронно. Переменные среды в аргументе strCommand автоматически раскрываются. Если тип файла был правильно зарегистрирован в конкретной программе, вызов run для файла этого типа запускает программу. Например, если в вашей компьютерной системе установлено приложение Word, вызов команды «Выполнить» для файла *.doc запускает Word и загружает документ. В следующей таблице перечислены доступные параметры для intWindowStyle.
Если у вас возникли проблемы с использованием переменных среды в вашем коде, вероятно, они были переназначены сценарием входа или политикой. Вы можете проверить это, введя в командной строке следующее:
echo %appdata%
Если это ничего не возвращает или не соответствует вашим ожиданиям, переменная окружения %appdata%
была переназначена.
Чтобы показать вам, как легко переназначить значение из командной строки
>set appdata
APPDATA=C:\Users\Example.Profile\AppData\Roaming
>set appdata=c:\
>echo %appdata%
C:\
Очевидно, вы можете отменить это снова, чтобы исправить проблему;
>set appdata=C:\Users\Example.Profile\AppData\Roaming
>echo %appdata%
C:\Users\Example.Profile\AppData\Roaming
Отказ от ответственности: это всего лишь примеры изменения переменных среды через командную строку, это не изменяет глобальные переменные среды, а изменения влияют только на текущий экземпляр командной строки. Для этого вам нужно изменить реестр с помощью редактора реестра, групповой политики и т. д. или использовать экран «Свойства системы» в панели управления.
Расположение AppData
настраивается в реестре как часть папок оболочки пользователей, составляющих профиль пользователя.
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
Значение по умолчанию для ключа AppData
в реестре:
%USERPROFILE%\AppData\Roaming
В любом случае VBScript не виноват.
Полезные ссылки
person
user692942
schedule
18.07.2016
oShell.Run oshell.ExpandEnvironmentStrings("%appdata%\Test.bat"),0,False
за один лайнер. - person   schedule 18.07.2016%APPDATA%
:oShell.Run "cmd /k echo %APPDATA%", 1, True
- person Ansgar Wiechers   schedule 18.07.2016