Windows Tips & News

Hoe een batchbestand automatisch te verhogen om het als beheerder uit te voeren

click fraud protection
AANBEVOLEN: Klik hier om Windows-problemen op te lossen en de systeemprestaties te optimaliseren

Soms moet u een batchbestand maken dat opdrachten bevat waarvoor verhoogde rechten vereist zijn. Vanwege de UAC-functie die sinds Windows Vista in Windows is opgenomen, wordt bij het starten van een batchbestand het geopend zonder de vereiste toegangsrechten, tenzij u er met de rechtermuisknop op klikt en "Uitvoeren als beheerder" selecteert in de context menu. Hier leest u hoe u een batchbestand kunt maken dat zichzelf automatisch verheft.

Advertentie


Voordat je verder gaat, zie hoe Batch-bestand (*.bat) toe te voegen aan Nieuw menu van Verkenner. Plaats de volgende inhoud aan het begin van uw batchbestand:
:: Automatisch controleren en beheerdersrechten verkrijgen V2. @echo uit. CLS. ECHO. ECHO ECHO Beheerdersshell uitvoeren. ECHO: init. setlocal DisableDelayedExpansion. stel "batchPath=%~0" in stel voor %%k in (%0) batchName=%%~nk in. stel "vbsGetPrivileges=%temp%\OEgetPriv_%batchName%.vbs" in setlocal EnableDelayedExpansion :checkPrivileges. NET BESTAND 1>NUL 2>NUL. if '%errorlevel%' == '0' ( ga naar gotPrivileges ) else ( ga naar getPrivileges ): getPrivileges. if '%1'=='ELEV' (echo ELEV & shift /1 & ga naar privileges) ECHO. ECHO ************************************ ECHO beroept zich op UAC voor escalatie van bevoegdheden. ECHO ************************************ ECHO Stel UAC = CreateObject^("Shell. Toepassing"^) > "%vbsGetPrivileges%" ECHO args = "ELEV " >> "%vbsGetPrivileges%" ECHO voor elke strArg in WScript. Argumenten >> "%vbsGetPrivileges%" ECHO argumenten = argumenten ^& strArg ^& " " >> "%vbsGetPrivileges%" ECHO Volgende >> "%vbsGetPrivileges%" ECHO UAC.ShellExecute "!batchPath!", args, "", "runas", 1 >> "%vbsGetPrivileges%" "%SystemRoot%\System32\WScript.exe" "%vbsGetPrivileges%" %* exit /B :gotPrivileges. setlocal & pushd. cd /d %~dp0. if '%1'=='ELEV' (del "%vbsGetPrivileges%" 1>nul 2>nul & shift /1) ::START. REM Voer shell uit als admin (voorbeeld) - plaats hier code zoals je wilt. ECHO %batchName% Argumenten: %1 %2 %3 %4 %5 %6 %7 %8 %9.

Plaats uw eigen batchcommando's die een verhoging vereisen onder de laatste regel.

De verstrekte code maakt een speciaal VBS-bestand aan dat het opnieuw zal opstarten als het niet als beheerder wordt uitgevoerd. Dus als u het start met beperkte machtigingen, krijgt u een UAC-prompt waarin u wordt gevraagd om de privileges te verhogen voordat het zijn opdrachten uitvoert!

Zo ziet het eruit in Windows 10:Windows 10 batchbestand

Windows 10 batchbestand UAC-verzoek

Windows 10 verhoogt automatisch een batchbestandCredits voor deze code ga naar Mat.

AANBEVOLEN: Klik hier om Windows-problemen op te lossen en de systeemprestaties te optimaliseren

Windows 10 woord voor Archief

Deze website maakt gebruik van cookies om uw ervaring te verbeteren terwijl u door de website nav...

Lees verder

Schakel Cortana uit in Windows 10 Creators Update

Schakel Cortana uit in Windows 10 Creators Update

Cortana is een digitale assistent die wordt meegeleverd met Windows 10. U kunt Cortana vragen om ...

Lees verder

Alle manieren om een ​​nieuw exemplaar van de actieve app te openen in Windows 10

Alle manieren om een ​​nieuw exemplaar van de actieve app te openen in Windows 10

Zoals u misschien weet, kunt u met Windows 10, net als alle eerdere versies ervoor, meerdere exem...

Lees verder