Windows Tips & News

Sådan hæver du automatisk en batchfil for at køre den som administrator

click fraud protection
ANBEFALEDE: Klik her for at løse Windows-problemer og optimere systemets ydeevne

Nogle gange skal du oprette en batch-fil, som indeholder kommandoer, der kræver forhøjede rettigheder. På grund af UAC-funktionen inkluderet i Windows siden Windows Vista, åbnes den uden at starte en batchfil de nødvendige adgangsrettigheder, medmindre du højreklikker på det og vælger "Kør som administrator" fra konteksten menu. Her er, hvordan du kan oprette en batch-fil, som automatisk løfter sig selv.

Reklame


Før du fortsætter, se hvordan man tilføjer batchfil (*.bat) til Ny menu i File Explorer. Placer følgende indhold i begyndelsen af ​​din batchfil:
:: Kontroller og få automatisk administratorrettigheder V2. @ekko slukket. CLS. EKKO. ECHO ECHO Running Admin shell. ECHO :init. setlocal DisableDelayedExpansion. sæt "batchPath=%~0" for %%k i (%0) skal du indstille batchName=%%~nk. sæt "vbsGetPrivileges=%temp%\OEgetPriv_%batchName%vbs" setlocal EnableDelayedExpansion :checkPrivileges. NET FIL 1>NUL 2>NUL. if '%errorlevel%' == '0' (goto gotPrivileges) else (goto getPrivileges):getPrivileges. hvis '%1'=='ELEV' (ekko ELEV & skift /1 & goto gotPrivileges) EKKO. EKKO ************************************** ECHO påberåber UAC for Privilege Escalation. ECHO ************************************** ECHO Set UAC = CreateObject^("Shell. Applikation"^) > "%vbsGetPrivileges%" ECHO args = "ELEV " >> "%vbsGetPrivileges%" EKKO for hver strArg i WScript. Argumenter >> "%vbsGetPrivileges%" ECHO args = args ^& strArg ^& " " >> "%vbsGetPrivileges%" ECHO Næste >> "%vbsGetPrivileges%" ECHO UAC.ShellExecute "!batchPath!", args, "", "runas", 1 >> "%vbsGetPrivileges%" "%SystemRoot%\System32\WScript.exe" "%vbsGetPrivileges%" %* exit /B :gotPrivileges. indstil lokalt & skubbet. cd /d %~dp0. if '%1'=='ELEV' (del "%vbsGetPrivileges%" 1>nul 2>nul & shift /1) ::START. REM Kør shell som admin (eksempel) - indsæt kode her, som du vil. ECHO %batchName% Argumenter: %1 %2 %3 %4 %5 %6 %7 %8 %9.

Placer dine egne batch-kommandoer, som kræver elevation under den sidste linje.

Den medfølgende kode vil oprette en speciel VBS-fil, som genstarter den, hvis den ikke kører som administrator. Så hvis du starter den med begrænsede tilladelser, vil du få en UAC-prompt, der beder dig om at hæve privilegier, før den kører sine kommandoer!

Sådan ser det ud i Windows 10:Windows 10 batch-fil

Windows 10 batchfil UAC anmodning

Windows 10 hæver automatisk en batchfilCredits for denne kode går til Matt.

ANBEFALEDE: Klik her for at løse Windows-problemer og optimere systemets ydeevne
Deaktiver VPN over en målt forbindelse i Windows 10

Deaktiver VPN over en målt forbindelse i Windows 10

ANBEFALEDE: Klik her for at løse Windows-problemer og optimere systemets ydeevneDenne artikel for...

Læs mere

Windows Defender for at beskytte mod apps, der viser tvangsmeddelelser

Windows Defender for at beskytte mod apps, der viser tvangsmeddelelser

Windows Defender er den indbyggede sikkerhedsløsning i Windows 10. Det giver grundlæggende beskyt...

Læs mere

Microsoft dræber den klassiske OneNote desktop-app

Microsoft dræber den klassiske OneNote desktop-app

ANBEFALEDE: Klik her for at løse Windows-problemer og optimere systemets ydeevneMed udgivelsen af...

Læs mere