cmd/bat如何自动请求管理员权限而不需要右键管理员运行

来源:互联网 发布:asp网络程序怎么样? 编辑:程序博客网 时间:2024/06/05 19:45

先上完整代码:

@echo off>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"if '%errorlevel%' NEQ '0' (echo 请求管理员权限...goto UACPrompt) else ( goto gotAdmin ):UACPromptecho Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs""%temp%\getadmin.vbs"exit /B:gotAdmin

这玩意儿是百度出来的


原理如下:

访问一个需要授权的文件夹,如(%SYSTEMROOT%\system32\config\system)

如果被允许了,说明显然有管理员权限


如果被拒绝了,就要申请权限了。


申请权限的方法是:

(看echo的代码)

创建一个运行器,运行相对目录(相对目录就是运行批处理的目录)里面的程序,以管理员权限。


然后自然就申请管理员了哇

0 0
原创粉丝点击