Windows Tips & News

Cum să ridicați automat un fișier batch pentru a-l rula ca administrator

RECOMANDAT: Faceți clic aici pentru a remedia problemele Windows și pentru a optimiza performanța sistemului

Uneori trebuie să creați un fișier batch care să includă comenzi care necesită drepturi ridicate. Datorită funcției UAC inclusă în Windows din Windows Vista, atunci când porniți un fișier batch, acesta se deschide fără drepturile de acces necesare, cu excepția cazului în care faceți clic dreapta pe el și selectați „Run as Administrator” din context meniul. Iată cum puteți crea un fișier batch care se va ridica automat.

Publicitate


Înainte de a continua, vezi cum să adăugați fișierul Batch (*.bat) în meniul Nou al File Explorer. Plasați următorul conținut la începutul fișierului batch:
:: Verificați automat și obțineți drepturi de administrator V2. @echo dezactivat. CLS. ECOU. ECHO ECHO Rulează shell de administrare. ECHO :init. setlocal DisableDelayedExpansion. setați „batchPath=%~0” pentru %%k în (%0) setați batchName=%%~nk. setați „vbsGetPrivileges=%temp%\OEgetPriv_%batchName%.vbs” setlocal EnableDelayedExpansion :checkPrivileges. NET FILE 1>NUL 2>NUL. if '%errorlevel%' == '0' ( goto gotPrivileges ) else ( goto getPrivileges ) :getPrivileges. if '%1'=='ELEV' (echo ELEV & shift /1 & goto gotPrivileges) ECOU. ECHO **************************************** ECHO invocă UAC pentru escaladarea privilegiilor. ECHO ************************************** ECHO Set UAC = CreateObject^("Shell. Aplicație"^) > "%vbsGetPrivileges%" ECHO args = "ELEV " >> "%vbsGetPrivileges%" ECHO pentru fiecare strArg din WScript. Argumente >> „%vbsGetPrivileges%” ECHO args = args ^& strArg ^& " " >> "%vbsGetPrivileges%" ECHO Următorul >> „%vbsGetPrivileges%” ECHO UAC.ShellExecute „!batchPath!”, args, „”, „runas”, 1 >> „%vbsGetPrivileges%” „%SystemRoot%\System32\WScript.exe” „%vbsGetPrivileges%” %* ieșire /B :gotPrivileges. setlocal & pushd. cd /d %~dp0. dacă '%1'=='ELEV' (del "%vbsGetPrivileges%" 1>nul 2>nul & shift /1) ::START. REM Run shell ca admin (exemplu) - puneți aici codul după cum doriți. ECHO %batchName% Argumente: %1 %2 %3 %4 %5 %6 %7 %8 %9.

Plasați propriile comenzi de lot care necesită elevație sub ultima linie.

Codul furnizat va crea un fișier VBS special care îl va reporni dacă nu rulează ca administrator. Deci, dacă îl lansați cu permisiuni limitate, veți primi un prompt UAC care vă va cere să ridicați privilegiile înainte de a-și executa comenzile!

Iată cum arată în Windows 10:Fișier batch Windows 10

Solicitare UAC fișier batch Windows 10

Windows 10 ridică automat un fișier batchCreditele pentru acest cod merg la Matt.

RECOMANDAT: Faceți clic aici pentru a remedia problemele Windows și pentru a optimiza performanța sistemului

Sergey Tkachenko, autor la Winaero

După cum probabil ați observat, dispozitivele desktop și bara laterală lipsesc în Windows din Win...

Citeste mai mult

Firefox 98 va schimba motorul de căutare implicit pentru unii utilizatori

Firefox 98 va schimba motorul de căutare implicit pentru unii utilizatori

După actualizarea la Firefox 98, programată pe 8 martie, unii utilizatori vor observa că motorul ...

Citeste mai mult

Sergey Tkachenko, autor la Winaero

Dezvoltatorii de terminale Windows se deschid săptămâna aceasta cu două noi eliberează. Cea se af...

Citeste mai mult