有些软件执行命令必须要有管理员权限才能执行,我们平时的做法是右击这个文件——以管理员身份运行,当然批处理也不例外。如何无需其它操作直接双击就可以以管理员权限运行呢?

删除文件怎么设置管理员权限不够(批处理管理员怎么设置权限)(1)

我们只需在批处理添加如下代码即可

@echo off 
setlocal EnableDelayedExpansion

PUSHD %~DP0 & cd /d "%~dp0"
%1 %2
mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :runas","","runas",1)(window.close)&goto :eof

:runas

我们把需要执行命令放到:runas下即可。

比如我这边以新建一个abc的用户,并把它加入administrators管理组为例,那么代码如下:

@echo off 
setlocal EnableDelayedExpansion

PUSHD %~DP0 & cd /d "%~dp0"
%1 %2
mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :runas","","runas",1)(window.close)&goto :eof

:runas
net user abc 123 /ad
net localgroup administrators  abc /ad

pause >nul

我执行下

删除文件怎么设置管理员权限不够(批处理管理员怎么设置权限)(2)

用户中多了一个abc的用户。

删除文件怎么设置管理员权限不够(批处理管理员怎么设置权限)(3)

abc这个用户经查看已经在administrators组中了。

删除文件怎么设置管理员权限不够(批处理管理员怎么设置权限)(4)