# 前言
powershell 时常常需要获取管理员权限,例如修改系统代理
# 代码
@echo off | |
cd /d "%~dp0" | |
cacls.exe "%SystemDrive%\System Volume Information" >nul 2>nul | |
if %errorlevel%==0 goto Admin | |
if exist "%temp%\getadmin.vbs" del /f /q "%temp%\getadmin.vbs" | |
echo Set RequestUAC = CreateObject^("Shell.Application"^)>"%temp%\getadmin.vbs" | |
echo RequestUAC.ShellExecute "%~s0","","","runas",1 >>"%temp%\getadmin.vbs" | |
echo WScript.Quit >>"%temp%\getadmin.vbs" | |
"%temp%\getadmin.vbs" /f | |
if exist "%temp%\getadmin.vbs" del /f /q "%temp%\getadmin.vbs" | |
exit | |
:Admin | |
# 这里的命令拥有管理员权限 | |
taskkill /f /t /im qqprotect.exe |
上述代码中可以将需要 administrator 权限的命令放置其中。