bat 判斷 bat 是否是以管理員權限運行,和自動以管理員權限運行
判斷
@echo off net.exe session 1>NUL 2>NUL && ( goto as_admin ) || ( goto not_admin ) :as_admin echo as_admin goto end :not_admin echo not as admin :end pause
自動以管理員權限運行
@echo off net.exe session 1>NUL 2>NUL && ( goto gotAdmin ) || ( goto UACPrompt ) :UACPrompt echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs" echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs" "%temp%\getadmin.vbs" exit /B :gotAdmin if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" ) :begin pause
參考鏈接:https://www.cnblogs.com/dengpeng1004/p/7044441.html
注意:參考鏈接中的方式,如果一個bat編譯成exe后,去運行另外一個 以管理員權限運行的 bat,%errorlevel% 一直都不能為0