Викликати спливаюче меню UAC з командної лінії без спеціальних інструментів


8

У програмі Win7 користувач може клацнути правою кнопкою миші програму та вибрати "Запустити як адміністратор". Ви отримуєте спливаюче вікно, але не потрібно вводити пароль адміністратора.

Я хотів би отримати той самий функціонал, але з командного рядка - зокрема, зсередини .batфайлу.

Мені відомо про вбудовану runasкоманду, але я не знайшов способу скористатись тим, що в якийсь момент не запитав пароль.

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

Чи є спосіб досягти цього за допомогою лише вбудованих інструментів командного рядка в Win7?


Оновлення: Завдяки uSlackr я розробив цю команду:

powershell Start-Process cmd.exe -Verb RunAs

Звичайно, cmd.exeце просто заповнювач.

Відповіді:


4

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


Ідеально, дякую. Я оновив питання робочим прикладом.
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

Змініть це на "/ активно: ні", якщо ви хочете вимкнути обліковий запис. Короткий вступ тут .


Щодо вашої першої пропозиції: Вибачте, мені не було зрозуміло. Я хочу зробити це з файлу .bat (питання оновлено).
jwd

Щодо вашої другої пропозиції: я запустив це, і отримав "Виникла системна помилка 5. У доступі заборонено."
jwd

Навіть працює cmd.exe як адміністратор?
А. Хейс

1
Вся суть цього питання полягає в тому, що я виконую цю команду як не адміністратор і хочу тимчасово підвищити дозволи.
jwd
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.