Вызвать всплывающее окно UAC из командной строки без пользовательских инструментов

8

В Win7 пользователь может щелкнуть правой кнопкой мыши программу и выбрать «Запуск от имени администратора». Вы получаете всплывающее окно, но не нужно вводить пароль администратора.

Я хотел бы получить ту же функциональность, но из командной строки - в частности, из .batфайла.

Мне известна встроенная runasкоманда, но я не нашел способа использовать этот способ, чтобы в какой-то момент не запрашивать пароль.

Я также известно о Process.StartInfo.Verb = "runas";методе, который делает именно то , что я хочу, но требует от меня создать приложение пользовательских .NET.

Есть ли способ, используя только встроенные инструменты командной строки в Win7, чтобы достичь этого?


Обновление: благодаря uSlackr я разработал эту команду:

powershell Start-Process cmd.exe -Verb RunAs

Конечно, cmd.exeэто просто заполнитель.

JWD
источник

Ответы:

4

Вы можете использовать командлет Start-Process в Powershell с глаголом RunAs. Подробнее здесь: http://technet.microsoft.com/en-us/library/dd347667.aspx

uSlackr
источник
Отлично спасибо. Я обновил вопрос рабочим примером.
JWD
Любой эквивалент на Windows XP?
Максбестер
Powershell доступен для XP.
uSlackr
В XP нет UAC, поэтому вопрос к нему не относится
nponeccop
@nponeccop Я предполагаю, что мотивация для того, чтобы запускаться под Windows XP, состоит в том, чтобы позволить запускать один скрипт как в Windows 7, так и в Windows XP, а не иметь один путь для Windows 7 с PowerShell и UAC и второй путь для Windows XP без PowerShell и нет UAC.
Дамиан Йеррик
1

Просто запустите cmd.exe от имени администратора.

Сочетание клавиш для этого - [shift] + [enter] после выбора командной строки в меню «Пуск». Должно появиться окно UAC.

ИЛИ

Запустите все как администратор

Не рекомендуется для повседневного использования, но есть также встроенная учетная запись администратора, которую вы можете активировать в Windows, которая будет просто запускать все приложения как root. В административном cmd:

net user administrator /active:yes

Измените это на «/ active: no», если вы хотите отключить учетную запись. Краткое введение здесь .

А. Хейс
источник
Относительно вашего первого предложения: извините, мне было непонятно. Я хочу сделать это из .bat файла (вопрос обновлен).
JWD
Что касается вашего второго предложения: я запустил это и получил «Произошла системная ошибка 5. Доступ запрещен».
JWD
Даже запуск cmd.exe в качестве администратора?
А. Хейс
1
Суть этого вопроса в том, что я запускаю эту команду как пользователь без прав администратора и хочу временно повысить разрешения.
января