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
Windows 10 versjon 1809 er tilgjengelig via Windows Update

Windows 10 versjon 1809 er tilgjengelig via Windows Update

5 svarSom du kanskje husker, Microsoft trakk Windows 10 oktober 2018-oppdatering raskt etter utgi...

Les mer

Last ned Last ned Eclipse Skin for AIMP3

Denne nettsiden bruker informasjonskapsler for å forbedre opplevelsen din mens du navigerer gjenn...

Les mer

Legg til AHCI Link Power Management til Power Options i Windows

Legg til AHCI Link Power Management til Power Options i Windows

ANBEFALT: Klikk her for å fikse Windows-problemer og optimalisere systemytelsenSlik legger du til...

Les mer