WIN10专业版下批处理文件如何自动添加管理员权限?

Windows 10是美国微软公司研发的跨平台及设备应用的操作系统 。是微软发布的最后一个独立Windows版本 。Windows 10共有7个发行版本 , 分别面向不同用户和设备 。截止至2018年3月7日 , Windows 10正式版已更新至秋季创意者10.0.16299.309版本 , 预览版已更新至春季创意者10.0.17120版本
 
Ghost win10系统批处理文件自动添加管理员权限方法:很多批处理文件在运行时都需要管理员权限 , 然而这些程序往往需要用户手动以管理员身份运行才能正常运作 , 这种“半自动化”设定事实上还是比较麻烦的 , 要是能够双击运行直接就带管理员权限岂不是更放心?其实这也不难 , 使用小编提供的代码就可以轻松实现自动获取权限的功能 。Win7/Win8.1/Ghost win10各版本均可使用 。
把如下代码(分割线之间)复制到记事本中 , 并保存为 .bat 格式即可(文件名可自拟):

WIN10专业版下批处理文件如何自动添加管理员权限?

文章插图

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::      系统天地自动添加批处理文件管理员权限      ::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
@echo off
CLS
ECHO.
ECHO ================================
ECHO 系统天地获取批处理文件管理员权限
ECHO ================================
:init
setlocal DisableDelayedExpansion
set "batchPath=%~0"
for %%k in (%0) do set batchName=%%~nk
set "vbsGetPrivileges=%temp%\OEgetPriv_%batchName%.vbs"
setlocal EnableDelayedExpansion
:checkPrivileges
NET FILE 1>NUL 2>NUL
if '%errorlevel%' == '0' ( goto gotPrivileges ) else ( goto getPrivileges )
:getPrivileges
if '%1'=='ELEV' (echo ELEV & shift /1 & goto gotPrivileges)
ECHO.
ECHO ********************************
ECHO 请求 UAC 权限批准……
ECHO ********************************
ECHO Set UAC = CreateObject^("Shell.Application"^) > "%vbsGetPrivileges%"
ECHO args = "ELEV " >> "%vbsGetPrivileges%"
ECHO For Each strArg in WScript.Arguments >> "%vbsGetPrivileges%"
ECHO args = args ^& strArg ^& " "  >> "%vbsGetPrivileges%"
ECHO Next >> "%vbsGetPrivileges%"
ECHO UAC.ShellExecute "!batchPath!", args, "", "runas", 1 >> "%vbsGetPrivileges%"
"%SystemRoot%\System32\WScript.exe" "%vbsGetPrivileges%" %*
exit /B
:gotPrivileges
setlocal & pushd .
cd /d %~dp0
if '%1'=='ELEV' (del "%vbsGetPrivileges%" 1>nul 2>nul  &  shift /1)
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::     以下为需要运行的批处理文件代码     ::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
rem 本行以下可修改为你需要的bat命令(从上面三行冒号开始到下面都可删改)
ECHO 欢迎使用系统天地!
ECHO.
pause
 
以上代码就是为你的bat内容获取管理员权限用的 , 加在你的代码之前就可以用了 。运行效果如下:

WIN10专业版下批处理文件如何自动添加管理员权限?

文章插图

▲图片说明:如果你的系统开启了UAC , 那么就需要运行后批准一下(别嫌麻烦 , 最好开启UAC , 比较安全)

WIN10专业版下批处理文件如何自动添加管理员权限?

文章插图

▲图片说明:运行示例(有小伙伴嫌CMD丑 , 所以你可以在属性→颜色中调下背景透明度 , 再换个喜欢的壁纸……)

WIN10专业版下批处理文件如何自动添加管理员权限?

文章插图

这个代码也支持Win7/Win8.1系统 , 效果如下(Windows7为例):

WIN10专业版下批处理文件如何自动添加管理员权限?

文章插图
【WIN10专业版下批处理文件如何自动添加管理员权限?】
WIN10专业版下批处理文件如何自动添加管理员权限?

文章插图

WIN10专业版下批处理文件如何自动添加管理员权限?

文章插图
 

    推荐阅读