setlocal

  set PrgRoot_LP=%~dp0
  set PrgRoot_LP=%PrgRoot_LP:~0,-1%

  rem call VNC4
  if /I "%1"=="RealVNC-Vnc4" call :RealVNC-Vnc4

  rem call UltraVnc
  if /I "%1"=="UltraVnc" call :UltraVnc

  goto :end

:UltraVnc
 rem -- start den UltraVnc Server auf dem Rechner
 set RemoteExe_NAME=winvnc
 set RemoteSoftware_DPNE=%PrgRoot_LP%\UltraVnc\winvnc.exe

 rem feststellen ob RemoteExe_NAME bereits gestartet wurde
 call %PrgRoot_LP%\PsTools\Pslist.exe %RemoteExe_NAME% /accepteula >nul 2>nul

 rem wenn RemoteExe_NAME noch nicht gestartet wurde dann diesen starten
 rem -SecurityTypes=VncAuth
 rem -SecurityTypes=None
 if "%errorlevel%"=="1" start "starting winvnc4 services" "%RemoteSoftware_DPNE%"
 rem  -AlwaysShared=1 -NoConsole -SecurityTypes=None

 goto :eof


:RealVNC-Vnc4
 rem -- start den WinVnc4 Server auf dem Rechner
 set RemoteExe_NAME=winvnc4
 set RemoteSoftware_DPNE=%PrgRoot_LP%\RealVNC\VNC4\winvnc4.exe

 rem feststellen ob RemoteExe_NAME bereits gestartet wurde
 call %PrgRoot_LP%\PsTools\Pslist.exe %RemoteExe_NAME% /accepteula >nul

 rem wenn RemoteExe_NAME noch nicht gestartet wurde dann diesen starten
 rem -SecurityTypes=VncAuth
 rem -SecurityTypes=None
 if "%errorlevel%"=="1" start "starting RealVNC-Vnc4 services" "%RemoteSoftware_DPNE%"  -AlwaysShared=1 -NoConsole -SecurityTypes=None
 goto :eof

:end

endlocal

