Powoduje wyskakujące okienko UAC z wiersza poleceń bez niestandardowych narzędzi

8

W Win7 użytkownik może kliknąć program prawym przyciskiem myszy i wybrać „Uruchom jako administrator”. Pojawia się wyskakujące okienko, ale nie trzeba wprowadzać hasła administratora.

Chciałbym uzyskać tę samą funkcjonalność, ale z wiersza poleceń - w szczególności z .batpliku.

Mam świadomość wbudowanej runaskomendy, ale nie znalazłem sposobu na jej użycie, który w pewnym momencie nie wymaga podania hasła.

Jestem też świadomy tego Process.StartInfo.Verb = "runas";sposobu, który robi dokładnie to, co chcę, ale wymaga ode mnie tworzenie niestandardowych aplikacji .NET.

Czy jest jakiś sposób, aby to zrobić przy użyciu tylko wbudowanych narzędzi wiersza poleceń w Win7?


Aktualizacja: Dzięki uSlackr opracowałem to polecenie:

powershell Start-Process cmd.exe -Verb RunAs

Oczywiście cmd.exejest to tylko symbol zastępczy.

jwd
źródło

Odpowiedzi:

4

Możesz użyć polecenia cmdlet Start-Process w Powershell z czasownikiem RunAs. Więcej tutaj: http://technet.microsoft.com/en-us/library/dd347667.aspx

uSlackr
źródło
Perfekcyjnie, dziękuję. Zaktualizowałem pytanie działającym przykładem.
jwd
Jakiś odpowiednik w systemie Windows XP?
Maxbester
Powershell jest dostępny dla XP.
uSlackr
XP nie ma UAC, więc pytanie nie ma znaczenia
nponeccop
@nponeccop Zakładam, że motywacją do uruchomienia w systemie Windows XP jest umożliwienie uruchomienia pojedynczego skryptu w systemie Windows 7 i Windows XP, brak jednej ścieżki dla systemu Windows 7 z programem PowerShell i UAC oraz drugiej ścieżki dla systemu Windows XP, który nie ma PowerShell i brak UAC.
Damian Yerrick
1

Po prostu uruchom cmd.exe jako administrator.

Skrót klawiaturowy to [shift] + [enter] po wybraniu linii poleceń z menu Start. Powinno wyskoczyć okno UAC.

LUB

Uruchom wszystko jako administrator

Niezalecane do codziennego użytku, ale jest też wbudowane konto administratora, które można aktywować w systemie Windows, które po prostu uruchomią wszystkie aplikacje jako root. W administracyjnym cmd:

net user administrator /active:yes

Zmień to na „/ active: no”, jeśli chcesz wyłączyć konto. Krótkie wprowadzenie tutaj .

A. Hayes
źródło
Jeśli chodzi o twoją pierwszą sugestię: Przepraszam, nie byłem jasny. Chcę to zrobić z pliku .bat (pytanie zaktualizowane).
jwd
Jeśli chodzi o twoją drugą sugestię: uruchomiłem to i otrzymałem komunikat „Wystąpił błąd systemowy 5. Brak dostępu”.
jwd
Nawet uruchomiłeś cmd.exe jako administrator?
A. Hayes
1
Chodzi o to, że uruchamiam to polecenie jako użytkownik niebędący administratorem i chcę tymczasowo podnieść uprawnienia.
jwd