首页 > 系统 > Win10 > 正文

Win10如何为批处理文件自动添加管理员权限

2024-06-28 15:37:02
字体:
来源:转载
供稿:网友

  很多批处理文件在运行时都需要管理员权限,然而这些程序往往需要用户手动以管理员身份运行才能正常运作,这种“半自动化”设定事实上还是比较麻烦的,要是能够双击运行直接就带管理员权限岂不是更放心?

  把如下代码(分割线之间)复制到记事本中,并保存为 .bat 格式即可(文件名可自拟):

Win10如何为批处理文件自动添加管理员权限 CUOxin.COM

  ————————— 分割线 —————————

  :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

  :: 软媒魔方自动添加批处理文件管理员权限 ::

  :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

  @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%System32WScript.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秘笈:如何为批处理文件自动添加管理员权限?

  ▲图片说明:Win7的CMD还没法设置透明背景

 

  复制代码还是比较麻烦,你可以直接下载上述制作好的文件:http://pan.baidu.com/s/1eSpzkky


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表