在日常运维工作中,为方便对windows用户进行系统安装或配置等,使用Windows自带的批处理(bat文件)是一种最为简单快速的方法。批处理脚本不会默认已管理员身份运行,一般情况下,我会将脚本命名为"XXXXXX(请右键点击,用管理员身份运行!).bat",但总有些用户会忽略这条提示,直接运行,此时由于权限不足,导致脚本运行失败。
代码实现自动以管理员身份执行批处理脚本
我们可以使用一种变通的方法,让bat启动时,首先调用vbs脚本,通过vbs脚本,以管理员身份调用该bat的 runas 部分.
我们的脚本可以写在runas 下,这样就点击该bat脚本,就可以已管理员身份运行了。
示例:
@ECHO OFF PUSHD %~DP0 & cd /d "%~dp0" ::填写自己的脚本 echo 执行完毕,任意键退出 pause >nul |
快捷方式或转换为exe可执行文件执行
- 创建bat快捷方式,然后右键快捷方式-->properties(属性)-->advanced(高级)-->Run as administrator(用管理员身份运行)。
- 下载bat转成exe工具,将bat转成exe,然后右键exe-->properties(属性)-->Compatibility(兼容性)-->Run as administrator(以管理员身份运行此程序)。