Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Windows 10系統教程 >> 關於Windows10系統教程 >> Win10如何為批處理文件自動添加管理員權限

Win10如何為批處理文件自動添加管理員權限

日期:2017/1/23 23:02:06      編輯:關於Windows10系統教程

很多批處理文件在運行時都需要管理員權限,然而這些程序往往需要用戶手動以管理員身份運行才能正常運作,這種“半自動化”設定事實上還是比較麻煩的,要是能夠雙擊運行直接就帶管理員權限豈不是更放心?

把如下代碼(分割線之間)復制到記事本中,並保存為.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%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

Copyright © Windows教程網 All Rights Reserved