From c7005cdfcf4e4a3fc4abd536afd9fb9a378994fb Mon Sep 17 00:00:00 2001 From: Noah Andrews Date: Thu, 2 Jun 2016 13:00:44 -0400 Subject: Stops explorer.exe from being started with admin privilieges (#373) --- 1-setup-path-win.bat | 72 ++++++++++++++++++++-------------------------------- 1 file changed, 28 insertions(+), 44 deletions(-) (limited to '1-setup-path-win.bat') diff --git a/1-setup-path-win.bat b/1-setup-path-win.bat index f612d0f4a7..92e91be3e2 100644 --- a/1-setup-path-win.bat +++ b/1-setup-path-win.bat @@ -2,25 +2,25 @@ @ECHO OFF SET CMDLINERUNSTR=%SystemRoot%\system32\cmd.exe -SET NEWPATH1="C:\MinGW\msys\1.0\bin" -SET NEWPATH2="C:\MinGW\bin" +CD UTIL +DEL add-paths.log > NUL 2>&1 +DEL add-paths-detail.log > NUL 2>&1 +DEL UPDATE > NUL 2>&1 + +ELEVATE -wait %cd%\add-paths.bat > NUL 2>&1 -:: Make sure we're running with administrator privileges -NET SESSION >nul 2>&1 IF ERRORLEVEL 1 ( - ECHO FAILED. Run this script with administrator privileges. - GOTO ExitBatch + ECHO You denied admin access. Rerun the script, and be sure to press the yes button this time. +) ELSE ( + TYPE add-paths.log 2> NUL ) - -:: Make sure the second path exists. The first path won't be created until the second script is run -IF NOT EXIST !NEWPATH2! (ECHO Path not found: %NEWPATH2% && GOTO ExitBatch) - -:: Add paths -CALL :AddPath %NEWPATH1% -CALL :AddPath %NEWPATH2% +ECHO. :: Branch to UpdateEnv if we need to update -IF DEFINED UPDATE (GOTO UpdateEnv) +IF EXIST UPDATE ( + DEL UPDATE + GOTO UpdateEnv +) GOTO ExitBatch @@ -28,9 +28,9 @@ GOTO ExitBatch :UpdateEnv ECHO Making updated PATH go live . . . -REG delete HKCU\Environment /F /V TEMPVAR > nul 2>&1 -setx TEMPVAR 1 > nul 2>&1 -REG delete HKCU\Environment /F /V TEMPVAR > nul 2>&1 +REG delete HKCU\Environment /F /V TEMPVAR > NUL 2>&1 +setx TEMPVAR 1 > NUL +REG delete HKCU\Environment /F /V TEMPVAR > NUL 2>&1 IF NOT !cmdcmdline! == !CMDLINERUNSTR! (CALL :KillExplorer) GOTO ExitBatch @@ -43,35 +43,19 @@ EXIT /b :: ----------------------------------------------------------------------------- -:AddPath -ECHO %PATH% | FINDSTR /C:"%~1" > nul -IF ERRORLEVEL 1 ( - REG add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /f /v PATH /t REG_SZ /d "%PATH%;%~1" > nul 2>&1 - IF ERRORLEVEL 0 ( - ECHO Adding %1 . . . Success! - SET "PATH=%PATH%;%~1" - SET UPDATE=1 - ) ELSE ( - ECHO Adding %1 . . . FAILED. Run this script with administrator privileges. - ) -) ELSE ( - ECHO Skipping %1 - Already in PATH - ) -EXIT /b - -:: ----------------------------------------------------------------------------- - :KillExplorer - -ECHO Your desktop is being restarted, please wait. . . -ping -n 5 127.0.0.1 > NUL 2>&1 -ECHO Killing process Explorer.exe. . . -taskkill /f /im explorer.exe +ECHO Your desktop will be restarted. +ECHO All file explorer windows except for the one you launched this script from WILL BE CLOSED. +ECHO Press enter when ready, or close this window if you would rather do a full restart of your computer at a later time. +PAUSE +ping -n 5 127.0.0.1 > NUL 2>&1 +ECHO Killing process Explorer.exe. . . +ECHO. +taskkill /f /im explorer.exe > NUL ECHO. -ECHO Your desktop is now loading. . . -ping -n 5 127.0.0.1 > NUL 2>&1 +ECHO Your desktop is now loading. . . ECHO. -ping -n 5 127.0.0.1 > NUL 2>&1 +ping -n 5 127.0.0.1 > NUL 2>&1 START explorer.exe -START explorer.exe %CD% +START explorer.exe %CD%\.. EXIT /b \ No newline at end of file -- cgit v1.2.1