据我所知,获取管理员权限的最简单方法是批处理脚本是通过调用 PowerShell。
@echo off
fltmc.exe >nul || (PowerShell.exe start -verb runas wt.exe '%~0'& exit /b)
echo directory '%~dp0'
pause
但是,这种方法的缺点是慢的。
我有几个脚本集合,可以通过调用 VBS 来获取它,这比调用 PowerShell 要快得多。但它们都不是在 Windows 终端中直接通过 cmd 本身执行的。
我的问题是,如何才能比上面的脚本加载得更快?当然,通过Windows 终端。
答案1
经过尝试,我终于找到了更快的
- 通过VB脚本
修改自:如何请求管理员...
@echo off
fltmc >nul && goto :Elevated
echo Set UAC=CreateObject^("Shell.Application"^) > "%temp%\ga.vbs"
echo UAC.ShellExecute "wt.exe", "%~0", "", "runas", 1 >> "%temp%\ga.vbs"
"%temp%\ga.vbs"& exit /B
:Elevated
fltmc >nul && echo admin || echo not
echo This Batch is "%~0"
pause
- 通过国家医学中心医学与医学工程学会
来源:尼尔软件
@echo off
fltmc >nul && goto :Elevated
set "nirapp=D:\nircmd-x64\nircmd.exe"
%nirapp% elevate wt.exe "%~0"& exit /b
:Elevated
fltmc >nul && echo admin || echo not
echo This Batch is "%~0"
pause