Jak automaticky zvýšit dávkový soubor a spustit jej jako správce? - Winhelponline

How Automatically Elevate Batch File Run It

Chcete-li dávkové soubory zvýšit ručně, kliknete na ně pravým tlačítkem a zvolíte Spustit jako správce. Tady je způsob, jak automaticky povýšit dávkový soubor, který ke správnému spuštění vyžaduje zvýšená oprávnění. To odpovídá výběru možnosti „Spustit jako správce“ kliknutím pravým tlačítkem na dávkový soubor. V obou případech by se výzva UAC stále zobrazovala.



Automatické zvedání dávkového souboru

 :::::::::::::::::::::::::::::::::::::::::::: :: Automaticky zkontrolovat a získat administrátorská práva V2 :::::::::::::::::::::::::::::::::::::::::::::: @echo off CLS ECHO. ECHO ============================= ECHO běží Admin shell ECHO =============== ===============: init setlocal DisableDelayedExpansion set 'batchPath =% ~ 0' pro %% k in (% 0) do set batchName = %% ~ nk set 'vbsGetPrivileges =% temp%  OEgetPriv_% batchName% .vbs 'setlocal EnableDelayedExpansion: checkPrivileges NET FILE 1> NUL 2> NUL if'% errorlevel% '==' 0 '(goto gotPrivileges) else (goto getPrivileges): getPrivileges pokud'% 1 '==' ELEV '(echo ELEV & shift / 1 & goto gotPrivileges) ECHO. ECHO **************************************** ECHO Vyvolání UAC pro eskalaci privilegia ECHO **** *********************************** ECHO Set UAC = CreateObject ^ ('Shell.Application' ^)> ' % vbsGetPrivileges% 'ECHO args =' ELEV '>>'% vbsGetPrivileges% 'ECHO pro každý strArg ve WScript.Argumenty >>'% vbsGetPrivileges% 'ECHO args = args ^ & strArg ^ &' '>>'% vbsGetPrivileges% ' ECHO Další >> '% 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 Spustit shell jako admin (příklad ) - vložte sem kód, jak se vám líbí ECHO% batchName% Argumenty:% 1% 2% 3% 4% 5% 6% 7% 8% 9 cmd / k 

Přidejte své pokyny k tomuto souboru .bat pod štítkem „START“.

Tento dávkový soubor vytvoří soubor Vbscript, který pak znovu spustí dávkový soubor jako správce (pokud již není spuštěn s oprávněními správce) pomocí parametru „runas“, který je nutný k jeho povýšení. Metoda Vbscript a „runas“ byla popsána v mém starém příspěvku Vbscript a zvýšení UAC ve Windows Vista a vyšších .

Kredity Mattovi při přetečení zásobníku pro tuto metodu. windows - Jak mohu automaticky povýšit svůj dávkový soubor, aby v případě potřeby vyžadoval práva správce UAC?

Spouštění dávkových souborů ve výchozím nastavení zvýšeno

Kromě výše uvedené metody automatického zvýšení úrovně můžete na straně klienta vyladit registr tak, aby dávkové soubory začaly vždy zvýšené, což ukazuje výzvu UAC. To se provádí změnou výchozí akce dvojitého kliknutí v registru z „otevřené“ na „runas“. Použijte tyto kroky:

Spusťte program Regedit.exe a přejděte do následujícího umístění:

HKEY_CLASSES_ROOT  batfile  shell

Poklepejte (výchozí) a nastavte jeho hodnotová data jako runy

bat soubor výchozí runas zvýšené

Ukončete editor registru.

Po této změně se dávkové soubory při poklepání vždy spustí zvýšené. Spustit jako správce by byla výchozí možnost zobrazená po kliknutí pravým tlačítkem na soubor .bat.

bat soubor výchozí runas zvýšené


Jedna malá žádost: Pokud se vám tento příspěvek líbil, sdílejte ho prosím?

Jedno „malé“ sdílení od vás by vážně hodně pomohlo s růstem tohoto blogu. Několik skvělých návrhů:
  • Připnout!
  • Sdílejte to na svém oblíbeném blogu + Facebook, Reddit
  • Tweetujte to!
Takže vám moc děkuji za podporu, můj čtenáři. Nebude to trvat déle než 10 sekund vašeho času. Tlačítka pro sdílení jsou vpravo dole. :)