Windows Tips & News

Hvordan heve en batchfil automatisk for å kjøre den som administrator

ANBEFALT: Klikk her for å fikse Windows-problemer og optimalisere systemytelsen

Noen ganger må du lage en batch-fil som inneholder kommandoer som krever forhøyede rettigheter. På grunn av UAC-funksjonen inkludert i Windows siden Windows Vista, åpnes den uten å starte en batchfil de nødvendige tilgangsrettighetene med mindre du høyreklikker på den og velger "Kjør som administrator" fra konteksten Meny. Her er hvordan du kan lage en batch-fil som automatisk hever seg selv.

Annonse


Før du fortsetter, se hvordan legge til batchfil (*.bat) til Ny meny i filutforsker. Plasser følgende innhold i begynnelsen av batchfilen:
:: Sjekk og få administratorrettigheter automatisk V2. @ekko av. CLS. EKKO. ECHO ECHO Running Admin shell. EKKO :init. setlocal DisableDelayedExpansion. sett "batchPath=%~0" for %%k i (%0) må du angi batchName=%%~nk. sett "vbsGetPrivileges=%temp%\OEgetPriv_%batchName%vbs" setlocal EnableDelayedExpansion :checkPrivileges. NET FIL 1>NUL 2>NUL. if '%errorlevel%' == '0' (goto gotPrivileges) else (goto getPrivileges) :getPrivileges. if '%1'=='ELEV' (ekko ELEV & shift /1 & goto gotPrivileges) EKKO. EKKO ************************************** ECHO påkaller UAC for Privilege Eskalering. ECHO ************************************** ECHO Set UAC = CreateObject^("Shell. Applikasjon"^) > "%vbsGetPrivileges%" ECHO args = "ELEV " >> "%vbsGetPrivileges%" EKKO for hver strArg i WScript. Argumenter >> "%vbsGetPrivileges%" ECHO args = args ^& strArg ^& " " >> "%vbsGetPrivileges%" ECHO Neste >> "%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 Kjør shell som admin (eksempel) - legg inn kode som du vil. ECHO %batchName% Argumenter: %1 %2 %3 %4 %5 %6 %7 %8 %9.

Plasser dine egne batchkommandoer som krever heving under siste linje.

Den oppgitte koden vil opprette en spesiell VBS-fil som vil starte den på nytt hvis den ikke kjører som administrator. Så hvis du starter den med begrensede tillatelser, vil du få en UAC-forespørsel som ber deg om å heve privilegiene før den kjører kommandoene sine!

Slik ser det ut i Windows 10:Windows 10 batch-fil

Windows 10 batchfil UAC-forespørsel

Windows 10 automatisk heve en batch-filKreditt for denne koden går til Matt.

ANBEFALT: Klikk her for å fikse Windows-problemer og optimalisere systemytelsen
Last ned Hero-bakgrunnsbilde og alle bakgrunnsbilder fra Windows 10 build 10159

Last ned Hero-bakgrunnsbilde og alle bakgrunnsbilder fra Windows 10 build 10159

I den utgitte versjonen 10159 av Windows 10 ble et sett med nye standard bakgrunnsbilder oppdaget...

Les mer

Få Windows XP-utseende i Windows 10 uten temaer eller oppdateringer

Få Windows XP-utseende i Windows 10 uten temaer eller oppdateringer

Brukere som husker og liker utseendet til Windows XP er kanskje ikke veldig imponert over standar...

Les mer

Classic Shell er åpen kildekode igjen, men dødt

Classic Shell er åpen kildekode igjen, men dødt

ANBEFALT: Klikk her for å fikse Windows-problemer og optimalisere systemytelsenEn trist kunngjøri...

Les mer