mirror of
https://github.com/stascorp/rdpwrap.git
synced 2024-12-04 20:53:34 +00:00
91 lines
2.2 KiB
Batchfile
91 lines
2.2 KiB
Batchfile
|
@echo off
|
||
|
setlocal EnableDelayedExpansion
|
||
|
echo RDP Wrapper Library Installer v1.0
|
||
|
echo Copyright (C) Stas'M Corp. 2013
|
||
|
echo.
|
||
|
|
||
|
set PROCESSOR_ARCHITECTURE | find "x86" > nul
|
||
|
if !errorlevel!==0 (
|
||
|
goto WOW64CHK
|
||
|
) else (
|
||
|
goto UNSUPPORTED
|
||
|
)
|
||
|
|
||
|
:WOW64CHK
|
||
|
echo [*] Check if running WOW64 subsystem...
|
||
|
set PROCESSOR_ARCHITEW6432 > nul
|
||
|
if !errorlevel!==0 (
|
||
|
goto UNSUPPORTED
|
||
|
) else (
|
||
|
goto SUPPORTED
|
||
|
)
|
||
|
|
||
|
:SUPPORTED
|
||
|
echo [+] Processor architecture is Intel x86 [supported]
|
||
|
goto INSTALL
|
||
|
|
||
|
:UNSUPPORTED
|
||
|
echo [-] Unsupported processor architecture
|
||
|
goto END
|
||
|
|
||
|
:INSTALL
|
||
|
echo [*] Installing...
|
||
|
if not exist rdpwrap.dll (
|
||
|
echo [-] Error: rdpwrap.dll file not found
|
||
|
goto END
|
||
|
)
|
||
|
echo [*] Copying file to Program Files...
|
||
|
md "%ProgramFiles%\RDP Wrapper"
|
||
|
xcopy /y rdpwrap.dll "%ProgramFiles%\RDP Wrapper\"
|
||
|
if not !errorlevel!==0 (
|
||
|
echo [-] Failed to copy rdpwrap.dll to Program Files folder
|
||
|
goto END
|
||
|
)
|
||
|
echo [*] Modifying registry...
|
||
|
reg add "HKLM\SYSTEM\CurrentControlSet\Services\TermService\Parameters" /v ServiceDll /t REG_EXPAND_SZ /d "%ProgramFiles%\RDP Wrapper\rdpwrap.dll" /f
|
||
|
if not !errorlevel!==0 (
|
||
|
echo [-] Failed to modify registry
|
||
|
goto END
|
||
|
)
|
||
|
echo [*] Setting firewall configuration...
|
||
|
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
|
||
|
netsh advfirewall firewall add rule name="Remote Desktop" dir=in protocol=tcp localport=3389 profile=any action=allow
|
||
|
echo [*] Looking for TermService PID...
|
||
|
tasklist /SVC /FI "SERVICES eq TermService" | find "PID" /V
|
||
|
echo.
|
||
|
if !errorlevel!==0 (
|
||
|
goto DONE
|
||
|
) else (
|
||
|
goto SVCSTART
|
||
|
)
|
||
|
|
||
|
:SVCSTART
|
||
|
echo [*] TermService is stopped. Starting it...
|
||
|
sc config TermService start= auto | find "1060" > nul
|
||
|
if !errorlevel!==0 (
|
||
|
echo [-] TermService is not installed. You need to install it manually.
|
||
|
goto END
|
||
|
) else (
|
||
|
net start TermService
|
||
|
goto DONE
|
||
|
)
|
||
|
|
||
|
:DONE
|
||
|
echo [+] Installation complete!
|
||
|
echo Now reboot or restart service.
|
||
|
echo.
|
||
|
echo To reboot computer type:
|
||
|
echo shutdown /r
|
||
|
echo.
|
||
|
echo To restart TermService type:
|
||
|
echo taskkill /f /pid 1234 ^(replace 1234 with real PID which is shown above^)
|
||
|
echo net start TermService
|
||
|
echo.
|
||
|
echo If second method is used, and there are another services sharing svchost.exe,
|
||
|
echo you must start it too:
|
||
|
echo net start Service1
|
||
|
echo net start Service2
|
||
|
echo etc.
|
||
|
goto END
|
||
|
|
||
|
:END
|