bat 管理员身份

bat 管理员身份

判断并获取管理员身份运行bat程序

需求:在使用Window批处理文件初始化ZeroTier时,需要管理员身份,需要检查是否是管理员身份运行

办法

@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" )  
 
::其他代码

pause

LICENSED UNDER CC BY-NC-SA 4.0
Comment