3

Этот вопрос отличается от « Запуск от имени администратора» от командной строки в Windows 8, и я написал почему: я хочу запустить программу а) от имени другого пользователя б) получить повышенные привилегии (что дополнительно требуется для выполнения от имени администратора в соответствии с UAC) и в) пройти первоначальную среду. Статья о ссылках охватывает только a+b.

Я только что увидел, что «runas /user:admin /env cmd.exe», который раньше работал в WinXP, больше не работает в Vista+ из-за UAC: требуется дополнительное повышение прав.

Что является лучшим / самым коротким (в том смысле, что мне не нужно устанавливать программу; нормально было бы копировать небольшие вспомогательные файлы) для достижения:

  • Запуск exe-файла от имени администратора (то есть другого пользователя в группе администраторов)
  • Кроме того, с повышенными привилегиями
  • Сохранить среду текущих пользователей
  • Разрешает задавать параметры для исполняемой программы

Я нашел "Elevation PowerToys для Windows Vista" и попытался:

runas /user:admin /env "%USR%\bin\Elevate.cmd \"%COMMANDER_EXE%\""

но у этого есть один ограничитель шоу и некоторые недостатки:

  • Хотя я использую "/env", исполняемая программа не наследует окружение
  • Трехкратные вложенные параметры затрудняют предоставление более сложных параметров для% COMMANDER_EXE%
  • Я бы предпочел нормальное / графическое окно для ввода пароля, а не окно cmd
  • После runas дополнительно появляется диалоговое окно UAC (было бы хорошо иметь это вместе)

0