Windows Tips & News

Jak automatycznie podnieść plik wsadowy, aby uruchomić go jako administrator?

click fraud protection
ZALECANA: Kliknij tutaj, aby rozwiązać problemy z systemem Windows i zoptymalizować wydajność systemu

Czasami trzeba utworzyć plik wsadowy, który zawiera polecenia wymagające podwyższonych uprawnień. Ze względu na funkcję UAC zawartą w systemie Windows od systemu Windows Vista, po uruchomieniu pliku wsadowego otwiera się on bez wymagane prawa dostępu, chyba że klikniesz je prawym przyciskiem myszy i wybierzesz „Uruchom jako administrator” z kontekstu menu. Oto, jak możesz utworzyć plik wsadowy, który automatycznie się podniesie.

Reklama


Zanim przejdziesz dalej, zobacz jak dodać plik wsadowy (*.bat) do nowego menu Eksploratora plików. Umieść następującą zawartość na początku pliku wsadowego:
:: Automatycznie sprawdź i uzyskaj uprawnienia administratora V2. @echo wyłączone. CLS. ECHO. ECHO ECHO Uruchomiona powłoka administracyjna. ECHO :init. setlocal DisableDelayedExpansion. ustaw "ścieżka wsadowa=%~0" dla %%k w (%0) ustaw wsadName=%%~nk. ustaw „vbsGetPrivileges=%temp%\OEgetPriv_%batchName%.vbs” setlocal EnableDelayedExpansion :checkPrivileges. PLIK SIECIOWY 1>BRAK 2>BRAK. if '%errorlevel%' == '0' ( goto gotPrivileges ) else ( goto getPrivileges ) :getPrivileges. if '%1'=='ELEV' (echo ELEV & shift /1 & goto getPrivileges) ECHO. ECHO ************************************** ECHO Odwołuje się do kontroli konta użytkownika w celu eskalacji uprawnień. ECHO **************************************** ECHO Ustaw UAC = CreateObject^("Powłoka. Aplikacja"^) > "%vbsGetPrivileges%" Argumenty ECHO = "ELEV" >> "%vbsGetPrivileges%" ECHO dla każdego strArg w WScript. Argumenty >> „%vbsGetPrivileges%” ECHO args = args ^& strArg ^& " " >> "%vbsGetPrivileges%" ECHO Dalej >> "%vbsGetPrivileges%" ECHO UAC.ShellExecute "!batchPath!", args, "", "runas", 1 >> "%vbsGetPrivileges%" "%SystemRoot%\System32\WScript.exe" "%vbsGetPrivileges%" %* exit /B :gotPrivileges. setlocal i pchnięty. cd /d %~dp0. if '%1'=='ELEV' (del "%vbsGetPrivileges%" 1>brak 2>brak i przesunięcie /1) ::POCZĄTEK. REM Uruchom powłokę jako admin (przykład) - umieść tutaj kod, jak chcesz. ECHO %batchName% Argumenty: %1 %2 %3 %4 %5 %6 %7 %8 %9.

Umieść własne polecenia wsadowe, które wymagają podniesienia poniżej ostatniej linii.

Dostarczony kod utworzy specjalny plik VBS, który uruchomi go ponownie, jeśli nie jest uruchomiony jako Administrator. Tak więc, jeśli uruchomisz go z ograniczonymi uprawnieniami, otrzymasz monit UAC z prośbą o podniesienie uprawnień, zanim uruchomi swoje polecenia!

Oto jak to wygląda w Windows 10:Plik wsadowy systemu Windows 10

Żądanie UAC pliku wsadowego systemu Windows 10

Windows 10 automatycznie podnosi plik wsadowyKredyty dla tego kodu przejdź do Matt.

ZALECANA: Kliknij tutaj, aby rozwiązać problemy z systemem Windows i zoptymalizować wydajność systemu
OneDrive znacznie zmniejsza ilość wolnego miejsca dla wszystkich

OneDrive znacznie zmniejsza ilość wolnego miejsca dla wszystkich

ZALECANE: Kliknij tutaj, aby rozwiązać problemy z systemem Windows i zoptymalizować wydajność sys...

Czytaj więcej

Witryna Microsoft Store ma teraz nowy wygląd

Witryna Microsoft Store ma teraz nowy wygląd

ZALECANE: Kliknij tutaj, aby rozwiązać problemy z systemem Windows i zoptymalizować wydajność sys...

Czytaj więcej

Firma Microsoft zaprzestaje obsługi protokołów TLS 1.0 i 1.1 w systemie Windows 11

Firma Microsoft zaprzestaje obsługi protokołów TLS 1.0 i 1.1 w systemie Windows 11

ZALECANE: Kliknij tutaj, aby rozwiązać problemy z systemem Windows i zoptymalizować wydajność sys...

Czytaj więcej