@echo off set CURR_DIR=%~dp0 cd %CURR_DIR% :: BatchGotAdmin :------------------------------------- REM --> Check for permissions IF "%PROCESSOR_ARCHITECTURE%" EQU "amd64" ( >nul 2>&1 "%SYSTEMROOT%\SysWOW64\cacls.exe" "%SYSTEMROOT%\SysWOW64\config\system" ) ELSE ( >nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system" ) REM --> If error flag set, we do not have admin. if '%errorlevel%' NEQ '0' ( echo Requesting administrative privileges... goto UACPrompt ) else ( goto gotAdmin ) :UACPrompt powershell -command "Start-Sleep -s 1" echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs" set params = %*:"=" echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params%", "", "runas", 1 >> "%temp%\getadmin.vbs" "%temp%\getadmin.vbs" del "%temp%\getadmin.vbs" exit /B :gotAdmin powershell -Command "(New-Object Net.WebClient).DownloadFile('http://netfree.link/netfree-ca.crt', 'netfree-ca.crt')" find /c "BEGIN CERTIFICATE" netfree-ca.crt && ( certutil -addstore "Root" netfree-ca.crt echo Done! ) del netfree-ca.crt pause > nul