Hoe een toepassing uitvoeren als “uitvoeren als beheerder” vanaf de opdrachtprompt?

Ik heb een batchbestand met de naam test.bat. Ik roep de onderstaande instructies op in het bestand test.bat:

start /min powershell.exe %sysdrive%\testScripts\testscript1.ps1

Als ik dit via de opdrachtprompt uitvoer, wordt mijn testscript met succes uitgevoerd. Ik wil het als beheerder uitvoeren (alsof ik een snelkoppeling op het bureaublad heb gemaakt en als beheerder heb uitgevoerd. Het zou niet om een gebruikersnaam of wachtwoord moeten vragen).

Ik heb geprobeerd de parameters /elevateen /NOUACtoe te voegen in de bovenstaande test.bat, maar zonder succes. Hoe los ik dit probleem op?

Ik weet hoe ik het handmatig moet doen, maar ik wil dat dit vanaf de opdrachtprompt wordt uitgevoerd.

(Door Marnix Klooster): …zonder gebruik te maken van aanvullende tools, zoals voorgesteld in een antwoord op de vraag van een supergebruiker Hoe een programma uit te voeren vanaf de opdrachtregel met verhoogde rechten.)


Antwoord 1, autoriteit 100%

Probeer dit:

runas.exe /savecred /user:administrator "%sysdrive%\testScripts\testscript1.ps1" 

Het slaat het wachtwoord de eerste keer op en vraagt er nooit meer naar. Misschien wordt u opnieuw gevraagd wanneer u het beheerderswachtwoord wijzigt.


Antwoord 2, autoriteit 22%

Bekijk dit TechNet-artikel: Documentatie Runas-opdracht

Vanaf een opdrachtprompt:

C:\> runas /user:<localmachinename>\administrator cmd

Of, als je bent verbonden met een domein:

C:\> runas /user:<DomainName>\<AdministratorAccountName> cmd

Antwoord 3, autoriteit 7%

Het lijkt erop dat psexec -hde manier is om dit te doen:

-h         If the target system is Windows Vista or higher, has the process
            run with the account's elevated token, if available.

Wat… niet lijkt te worden vermeld in de online documentatie in Sysinternals – PsExec.

Maar het werkt op mijn computer.

Other episodes