Windows Tips & News

Hur man automatiskt höjer en batchfil för att köra den som administratör

click fraud protection
REKOMMENDERAD: Klicka här för att åtgärda Windows-problem och optimera systemets prestanda

Ibland behöver du skapa en batchfil som innehåller kommandon som kräver förhöjda rättigheter. På grund av UAC-funktionen som ingår i Windows sedan Windows Vista, när du startar en batchfil, öppnas den utan de nödvändiga åtkomsträttigheterna om du inte högerklickar på den och väljer "Kör som administratör" i sammanhanget meny. Så här kan du skapa en batchfil som automatiskt höjer sig själv.

Annons


Innan du fortsätter, se hur man lägger till batchfil (*.bat) till Ny meny i Filutforskaren. Placera följande innehåll i början av din batchfil:
:: Kontrollera och få administratörsrättigheter automatiskt V2. @eko av. CLS. EKO. ECHO ECHO Kör Admin-skal. ECHO :init. setlocal DisableDelayedExpansion. ställ in "batchPath=%~0" för %%k i (%0) ställ in batchName=%%~nk. ställ in "vbsGetPrivileges=%temp%\OEgetPriv_%batchName%vbs" setlocal EnableDelayedExpansion :checkPrivileges. NET-FIL 1>NUL 2>NUL. if '%errorlevel%' == '0' (goto gotPrivileges) else (goto getPrivileges):getPrivileges. om '%1'=='ELEV' (eko ELEV & shift /1 & goto gotPrivileges) EKO. ECHO **************************************** ECHO anropar UAC för privilegieskalering. ECHO ************************************** ECHO Set UAC = CreateObject^("Shell. Application"^) > "%vbsGetPrivileges%" ECHO args = "ELEV " >> "%vbsGetPrivileges%" ECHO för varje strArg i WScript. Argument >> "%vbsGetPrivileges%" ECHO args = args ^& strArg ^& " " >> "%vbsGetPrivileges%" ECHO Nästa >> "%vbsGetPrivileges%" ECHO UAC.ShellExecute "!batchPath!", args, "", "runas", 1 >> "%vbsGetPrivileges%" "%SystemRoot%\System32\WScript.exe" "%vbsGetPrivileges%" %* avsluta /B :gotPrivileges. setlocal & pushd. cd /d %~dp0. if '%1'=='ELEV' (del "%vbsGetPrivileges%" 1>nul 2>nul & shift /1) ::START. REM Kör skal som admin (exempel) - lägg in koden här som du vill. ECHO %batchName% Argument: %1 %2 %3 %4 %5 %6 %7 %8 %9.

Placera dina egna batchkommandon som kräver höjd under sista raden.

Den medföljande koden skapar en speciell VBS-fil som startar om den om den inte körs som administratör. Så om du startar den med begränsade behörigheter kommer du att få en UAC-prompt som ber dig att höja privilegier innan den kör sina kommandon!

Så här ser det ut i Windows 10:Windows 10 batchfil

Windows 10 batchfil UAC-begäran

Windows 10 höjer automatiskt en batchfilKrediter för denna kod går till Matt.

REKOMMENDERAD: Klicka här för att åtgärda Windows-problem och optimera systemets prestanda
Windows 10 build 17093 nu tillgängligt för insiders i snabbringen

Windows 10 build 17093 nu tillgängligt för insiders i snabbringen

Windows 10 Insider Preview Build 17093 för PC släpps till Windows Insiders i snabbringen och för ...

Läs mer

Aktivera taligenkänning i Windows 10

Aktivera taligenkänning i Windows 10

REKOMMENDERAD: Klicka här för att åtgärda Windows-problem och optimera systemets prestandaWindows...

Läs mer

Windows 10 Creators Update Svchost.exe-arkiv

Denna webbplats använder cookies för att förbättra din upplevelse när du navigerar genom webbplat...

Läs mer