🧩 Как запустить приложение с обычными правами из скрипта, выполняющегося с правами администратора
Это может понадобиться, когда в одном скрипте объединены задачи, требующие разного уровня прав. Вы же, надеюсь, не запускаете все приложения от имени администратора? Вот и здесь это не нужно. Конкретную задачу сейчас озвучивать не хочу, чтобы не спойлерить грядущую статью блога 😎 Пока просто показываю прием.
Когда скрипт или командная строка работает с полными правами, их наследуют все запускаемые оттуда команды и приложения. В этом случае не поможет RunAsInvoker, потому что административный токен уже выдан, т.е. дальше запускает админ.
👉 Однако можно привлечь в качестве посредника оболочку, а точнее - приложение explorer. Оно может принимать в качестве параметра полный путь к программе. При таком запуске повышения прав программы не происходит!
Помните завещание мистера Гейтса? ⌛️ Нельзя просто взять и запустить проводник с полными правами! И его дочерние процессы как следствие.
Для демонстрации в качестве подопытного приложения идеально подойдет командная строка. Когда она запущена с полными правами, в заголовке написано "Администратор".
👍 - о, что-то новенькое!
👌 - я все это знаю