Created
May 18, 2020 06:41
-
-
Save yqt/c881cb6b719e6a6917eab0a721bc7404 to your computer and use it in GitHub Desktop.
start Spooler service with Admin privilege
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
:::::::::::::::::::::::::::::::::::::::::::: | |
:: Elevate.cmd - Version 4 | |
:: Automatically check & get admin rights | |
:::::::::::::::::::::::::::::::::::::::::::: | |
@echo off | |
CLS | |
ECHO. | |
ECHO ============================= | |
ECHO Running Admin shell | |
ECHO ============================= | |
:init | |
setlocal DisableDelayedExpansion | |
set cmdInvoke=1 | |
set winSysFolder=System32 | |
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 Invoking UAC for Privilege Escalation | |
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%" | |
if '%cmdInvoke%'=='1' goto InvokeCmd | |
ECHO UAC.ShellExecute "!batchPath!", args, "", "runas", 1 >> "%vbsGetPrivileges%" | |
goto ExecElevation | |
:InvokeCmd | |
ECHO args = "/c """ + "!batchPath!" + """ " + args >> "%vbsGetPrivileges%" | |
ECHO UAC.ShellExecute "%SystemRoot%\%winSysFolder%\cmd.exe", args, "", "runas", 1 >> "%vbsGetPrivileges%" | |
:ExecElevation | |
"%SystemRoot%\%winSysFolder%\WScript.exe" "%vbsGetPrivileges%" %* | |
exit /B | |
:gotPrivileges | |
setlocal & cd /d %~dp0 | |
if '%1'=='ELEV' (del "%vbsGetPrivileges%" 1>nul 2>nul & shift /1) | |
:::::::::::::::::::::::::::: | |
::START | |
:::::::::::::::::::::::::::: | |
REM 把你需要运行的脚本放到下面就可以了 | |
net start Spooler |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment