Windows Tips & News

Ako automaticky povýšiť dávkový súbor na spustenie ako správca

4 odpovede

Niekedy je potrebné vytvoriť dávkový súbor, ktorý obsahuje príkazy vyžadujúce zvýšené práva. Vďaka funkcii UAC, ktorá je súčasťou systému Windows od systému Windows Vista, sa pri spustení dávkového súboru otvorí bez požadované prístupové práva, pokiaľ naň nekliknete pravým tlačidlom a z kontextu nevyberiete možnosť „Spustiť ako správca“. Ponuka. Tu je návod, ako môžete vytvoriť dávkový súbor, ktorý sa automaticky zvýši.

Než budete pokračovať, pozri ako pridať dávkový súbor (*.bat) do nového menu Prieskumníka. Na začiatok dávkového súboru umiestnite nasledujúci obsah:

:: Automaticky skontrolovať a získať práva správcu V2. @echo vypnuté. CLS. ECHO. ECHO ECHO Spustený administrátorský shell. ECHO: init. setlocal DisableDelayedExpansion. nastaviť "batchPath=%~0" pre %%k v (%0) nastavte názov dávky=%%~nk. nastaviť "vbsGetPrivileges=%temp%\OEgetPriv_%batchName%.vbs" setlocal EnableDelayedExpansion :checkPrivileges. ČISTÝ SÚBOR 1>NUL 2>NUL. if '%errorlevel%' == '0' ( goto gotPrivileges ) else ( goto getPrivileges ) :getPrivileges. if '%1'=='ELEV' (echo ELEV & shift /1 & goto gotOPrivileges) ECHO. ECHO ********************************************* ECHO vyvoláva UAC pre eskaláciu privilégií. ECHO **************************************** ECHO Set UAC = CreateObject^("Shell. Aplikácia"^) > "%vbsGetPrivileges%" ECHO args = "ELEV " >> "%vbsGetPrivileges%" ECHO pre každý strArg vo WScript. Argumenty >> "%vbsGetPrivileges%" ECHO args = args ^& strArg ^& " " >> "%vbsGetPrivileges%" ECHO Ďalej >> "%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 Spustite shell ako admin (príklad) - sem vložte kód, ako chcete. ECHO %batchName% Argumenty: %1 %2 %3 %4 %5 %6 %7 %8 %9.

Umiestnite svoje vlastné dávkové príkazy, ktoré vyžadujú nadmorskú výšku pod posledný riadok.

Poskytnutý kód vytvorí špeciálny súbor VBS, ktorý ho reštartuje, ak nie je spustený ako správca. Ak ho teda spustíte s obmedzenými povoleniami, zobrazí sa výzva UAC, ktorá vás požiada o zvýšenie privilégií predtým, ako spustí svoje príkazy!

Takto to vyzerá v systéme Windows 10:

Kredity za tento kód idú na Matt.

Získajte informácie o geolokácii IP adresy v Bash v systéme Linux

Získajte informácie o geolokácii IP adresy v Bash v systéme Linux

ODPORÚČANÉ: Kliknite sem, ak chcete opraviť problémy so systémom Windows a optimalizovať výkon sy...

Čítaj viac

Windows 10 Build 16288 nemá žiadny vodoznak na ploche

Windows 10 Build 16288 nemá žiadny vodoznak na ploche

3 odpovedeMicrosoft dnes vydal novú zostavu pripravovanej aktualizácie Windows 10 Creators Update...

Čítaj viac

Edge Canary dostal novú položku menu

Edge Canary dostal novú položku menu

Malá aktualizácia pristála na kanárskej pobočke Microsoft Edge Chromium. Počnúc zostavou 76.0.162...

Čítaj viac