Запуск программы из VBScript с правами администратора из под обычного пользователя
- Recluse
- 27.01.2023
- 3 966
- 0
- 7
- 7
- 0
- Содержание статьи
Использование оболочки Shell.Application
Обычно для запуска из VBScript какого-либо исполняемого файла используется оболочка WScript.Shell. Выглядит это следующим образом:
Set objShell = CreateObject("WScript.Shell")
objShell.Run "cmd.exe", 1, True
У данного способа есть один недостаток - он не позволяет запустить файл с повышением прав до уровня администратора, используя UAC. То есть, если выполнить данный vbs файл из под обычного пользователя, то мы не сможем никаким образом повысить права запущенной командной строки до администратора.
Но в Windows есть другая оболочка для запуска приложений - Shell.Application. Запуск Командной строки в данном случае будет выглядеть вот так:
Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "cmd.exe", , , "runas", 1
Параметр runas в данном случае заставляет оболочку проверять наличие прав администратора у пользователя - в случае их отсутствия, будет выведено окно UAC для повышения прав.
Добавить комментарий