Windows Tips & News

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

4 Răspunsuri

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.

Î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:

Creditele pentru acest cod merg la Matt.

Windows 11 Build 22000.346 este disponibil pentru canalele Beta și RP

Windows 11 Build 22000.346 este disponibil pentru canalele Beta și RP

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

Citeste mai mult

Dezactivați sugestiile automate în Run și File Explorer în Windows 10

Dezactivați sugestiile automate în Run și File Explorer în Windows 10

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

Citeste mai mult

Porniți sau dezactivați Search Indexer Respectați setările modului de alimentare a dispozitivului

Porniți sau dezactivați Search Indexer Respectați setările modului de alimentare a dispozitivului

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

Citeste mai mult