实现⿏标双击以管理员⾝份运⾏bat批处理⽂件
问题描述:
⽇常⼯作中会需要⽤到⼀些dos命令来实现⼀些快捷的功能,⽐如快速开启⽹络服务、更改静态IP、开启/关闭数据库等,我⼀般会把⼀些常⽤的命令写成⼀个bat批处理⽂件放在桌⾯上,这个时候只需要运⾏bat⽂件,就可以执⾏命令了。
这个时候问题就来了,很多时候我们的命令需要以管理员的⾝份来运⾏,直接的解决⽅式是右键bat⽂件,选择以管理员⾝份运⾏,但是这样会增加我们的⼯作量,这⾥推荐⼀个更加直接解决⽅式,完美的实现双击bat以管理员⾝份运⾏。
例如我需要将我的WLAN⽹卡改为静态ip,我就会⽤到⼀下命令:
netsh interface ip set Address "WLAN" static 192.168.1.111 255.255.255.0
我们在cmd命令窗⼝下输⼊这⾏命令会提⽰我们:
C:\Users\Mason>netsh interface ip set Address "WLAN" static 192.168.1.111 255.255.255.0
请求的操作需要提升(作为管理员运⾏)。
C:\Users\Mason>
我们把这⾏命令放在Fix_IP.bat⽂件中,双击直接运⾏,系统是不会报错,或者有什么提⽰的,命令也并没有⽣效。当我们右键⽂件以管理员⾝份运⾏时,命令⽣效了。
解决⽅法:
我们在bat⽂件的头部加上:
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
最终我们的bat⽂件如下:
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
netsh interface ip set Address "WLAN" static 192.168.1.111 255.255.255.0
这个时候保存⽂件,然后双击运⾏,就可以直接以管理员⾝份运⾏这个命令了。dos命令运行exe程序
总结:
只需要在bat⽂件的头部加上这两⾏命令,就可以实现以管理员⾝份运⾏命令了
bat⽂件模板
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
<dos 命令>
<dos 命令>
<dos 命令>
...

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。