Difference between revisions of "UltraVNC"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
(Updated 1.0.5.3 package with mirror driver installation and working remove section)
(Package for UltraVNC)
Line 1: Line 1:
 
This is a silent installer and uninstaller for distrubution of UltraVNC.
 
This is a silent installer and uninstaller for distrubution of UltraVNC.
 +
 +
== Package for UltraVNC 1.0.6.4 ==
 +
 +
This builds on the example from 1.0.5.3, with the notable addition of the extra work to install the video driver. The bad news is that the video driver doesn't work unless the client option "WPKG User Interface Show" checkbox is checked. The good news is that if that's checked, the below will work.  It's worth noting that the installation package no longer creates the 'driver' directory; this must now be done manually. You will have to setup your software repository with this directory. 
 +
 +
Because of the issues with the video driver, I have commented out the installation bits. They are included here for completeness sake.
 +
<source lang="xml">
 +
  <package id="UltraVNC" name="Ultra VNC" revision="1064" priority="0">
 +
    <check type="uninstall" condition="exists" path="UltraVNC 1.0.6.4" />
 +
    <!-- <check type="registry" condition="exists" path="HKLM\SYSTEM\CurrentControlSet\Services\mv2\Start" /> -->
 +
 +
    <install cmd="net stop uvnc_service">
 +
      <exit code="0" />
 +
      <exit code="2" />
 +
    </install>
 +
    <install cmd="sc delete uvnc_service" />
 +
    <install cmd='\\sunpro\apps$\ultravnc\UltraVNC_1.0.6.4_Setup.exe /verysilent /loadinf="\\sunpro\apps$\ultravnc\UltraVNC_1.0.6.4_Setup.exe"' />
 +
    <install cmd='%comspec% /c copy /Y \\sunpro\apps$\ultravnc\ultravnc.ini "%ProgramFiles%\UltraVNC\"' />
 +
    <install cmd='%comspec% /c copy /Y \\sunpro\apps$\ultravnc\rc4.key "%ProgramFiles%\UltraVNC\"' />
 +
    <!--    <install cmd='%comspec% /c mkdir "%ProgramFiles%\UltraVNC\driver"'>
 +
      <exit code="0" />
 +
      <exit code="1" />
 +
    </install> -->
 +
    <!-- <install cmd='%comspec% /c xcopy /Q /Y /S \\sunpro\apps$\ultravnc\driver "%ProgramFiles%\UltraVNC\driver\"' /> -->
 +
    <install cmd='"%ProgramFiles%\UltraVNC\MSLogonACL.exe" /i /a \\sunpro\apps$\ultravnc\acls.txt' />
 +
    <!-- <install cmd='%comspec% /c start /WAIT "Mirror Driver Install" /D"%ProgramFiles%\UltraVNC\driver\XP" "%ProgramFiles%\UltraVNC\driver\XP\setupdrv.exe" install' /> -->
 +
    <install cmd='"%ProgramFiles%\UltraVNC\winvnc.exe" -installs' />
 +
 +
    <upgrade cmd='net stop uvnc_service'>
 +
      <exit code='0' />
 +
      <exit code='2' />
 +
    </upgrade>
 +
    <upgrade cmd='sc delete uvnc_service' />
 +
    <upgrade cmd='\\sunpro\apps$\ultravnc\UltraVNC_1.0.6.4_Setup.exe /verysilent /loadinf="\\sunpro\apps$\ultravnc\UltraVNC_1.0.6.4_Setup.exe"' />
 +
    <upgrade cmd='%comspec% /c copy /Y \\sunpro\apps$\ultravnc\ultravnc.ini "%ProgramFiles%\UltraVNC\"' />
 +
    <upgrade cmd='%comspec% /c copy /Y \\sunpro\apps$\ultravnc\rc4.key "%ProgramFiles%\UltraVNC\"' />
 +
    <!-- <upgrade cmd='%comspec% /c mkdir "%ProgramFiles%\UltraVNC\driver"'>
 +
      <exit code="0" />
 +
      <exit code="1" />
 +
    </upgrade> -->
 +
    <!-- <upgrade cmd='%comspec% /c xcopy /Q /Y /S \\sunpro\apps$\ultravnc\driver "%ProgramFiles%\UltraVNC\driver\"' /> -->
 +
    <upgrade cmd='"%ProgramFiles%\UltraVNC\MSLogonACL.exe" /i /a \\sunpro\apps$\ultravnc\acls.txt' />
 +
    <!-- <upgrade cmd='%comspec% /c start /WAIT "Mirror Driver Install" /D"%ProgramFiles%\UltraVNC\XP" "%ProgramFiles%\UltraVNC\driver\XP\setupdrv.exe" install' /> -->
 +
    <upgrade cmd='"%ProgramFiles%\UltraVNC\winvnc.exe" -installs' />
 +
 +
    <!-- <remove cmd='%comspec% /c start /WAIT "Mirror Driver Uninstall" /D"%ProgramFiles%\UltraVNC\driver\XP" "%ProgramFiles%\UltraVNC\driver\XP\setupdrv.exe" uninstall' /> -->
 +
    <remove cmd='net stop uvnc_service'>
 +
      <exit code='0' />
 +
      <exit code='2' />
 +
    </remove>
 +
    <remove cmd='sc delete uvnc_service' />
 +
    <!-- <remove cmd='sc delete mv2' /> -->
 +
    <remove cmd='"%ProgramFiles%\UltraVNC\unins000.exe" /verysilent /norestart' />
 +
    <remove cmd='%comspec% /c rmdir /S /Q "%programfiles%\UltraVNC"' />
 +
 +
  </package>
 +
</source>
 +
 +
  
 
== Package for UltraVNC 1.0.5.3 ==
 
== Package for UltraVNC 1.0.5.3 ==

Revision as of 20:34, 24 September 2009

This is a silent installer and uninstaller for distrubution of UltraVNC.

Package for UltraVNC 1.0.6.4

This builds on the example from 1.0.5.3, with the notable addition of the extra work to install the video driver. The bad news is that the video driver doesn't work unless the client option "WPKG User Interface Show" checkbox is checked. The good news is that if that's checked, the below will work. It's worth noting that the installation package no longer creates the 'driver' directory; this must now be done manually. You will have to setup your software repository with this directory.

Because of the issues with the video driver, I have commented out the installation bits. They are included here for completeness sake.

  <package id="UltraVNC" name="Ultra VNC" revision="1064" priority="0">
    <check type="uninstall" condition="exists" path="UltraVNC 1.0.6.4" />
    <!-- <check type="registry" condition="exists" path="HKLM\SYSTEM\CurrentControlSet\Services\mv2\Start" /> -->

    <install cmd="net stop uvnc_service">
      <exit code="0" />
      <exit code="2" />
    </install>
    <install cmd="sc delete uvnc_service" />
    <install cmd='\\sunpro\apps$\ultravnc\UltraVNC_1.0.6.4_Setup.exe /verysilent /loadinf="\\sunpro\apps$\ultravnc\UltraVNC_1.0.6.4_Setup.exe"' />
    <install cmd='%comspec% /c copy /Y \\sunpro\apps$\ultravnc\ultravnc.ini "%ProgramFiles%\UltraVNC\"' />
    <install cmd='%comspec% /c copy /Y \\sunpro\apps$\ultravnc\rc4.key "%ProgramFiles%\UltraVNC\"' />
    <!--    <install cmd='%comspec% /c mkdir "%ProgramFiles%\UltraVNC\driver"'> 
      <exit code="0" />
      <exit code="1" />
    </install> -->
    <!-- <install cmd='%comspec% /c xcopy /Q /Y /S \\sunpro\apps$\ultravnc\driver "%ProgramFiles%\UltraVNC\driver\"' /> -->
    <install cmd='"%ProgramFiles%\UltraVNC\MSLogonACL.exe" /i /a \\sunpro\apps$\ultravnc\acls.txt' />
    <!-- <install cmd='%comspec% /c start /WAIT "Mirror Driver Install" /D"%ProgramFiles%\UltraVNC\driver\XP" "%ProgramFiles%\UltraVNC\driver\XP\setupdrv.exe" install' /> -->
    <install cmd='"%ProgramFiles%\UltraVNC\winvnc.exe" -installs' />

    <upgrade cmd='net stop uvnc_service'>
      <exit code='0' />
      <exit code='2' />
    </upgrade>
    <upgrade cmd='sc delete uvnc_service' />
    <upgrade cmd='\\sunpro\apps$\ultravnc\UltraVNC_1.0.6.4_Setup.exe /verysilent /loadinf="\\sunpro\apps$\ultravnc\UltraVNC_1.0.6.4_Setup.exe"' />
    <upgrade cmd='%comspec% /c copy /Y \\sunpro\apps$\ultravnc\ultravnc.ini "%ProgramFiles%\UltraVNC\"' />
    <upgrade cmd='%comspec% /c copy /Y \\sunpro\apps$\ultravnc\rc4.key "%ProgramFiles%\UltraVNC\"' />
    <!-- <upgrade cmd='%comspec% /c mkdir "%ProgramFiles%\UltraVNC\driver"'> 
      <exit code="0" />
      <exit code="1" />
    </upgrade> -->
    <!-- <upgrade cmd='%comspec% /c xcopy /Q /Y /S \\sunpro\apps$\ultravnc\driver "%ProgramFiles%\UltraVNC\driver\"' /> -->
    <upgrade cmd='"%ProgramFiles%\UltraVNC\MSLogonACL.exe" /i /a \\sunpro\apps$\ultravnc\acls.txt' />
    <!-- <upgrade cmd='%comspec% /c start /WAIT "Mirror Driver Install" /D"%ProgramFiles%\UltraVNC\XP" "%ProgramFiles%\UltraVNC\driver\XP\setupdrv.exe" install' /> -->
    <upgrade cmd='"%ProgramFiles%\UltraVNC\winvnc.exe" -installs' />

    <!-- <remove cmd='%comspec% /c start /WAIT "Mirror Driver Uninstall" /D"%ProgramFiles%\UltraVNC\driver\XP" "%ProgramFiles%\UltraVNC\driver\XP\setupdrv.exe" uninstall' /> -->
    <remove cmd='net stop uvnc_service'>
      <exit code='0' />
      <exit code='2' />
    </remove>
    <remove cmd='sc delete uvnc_service' />
    <!-- <remove cmd='sc delete mv2' /> -->
    <remove cmd='"%ProgramFiles%\UltraVNC\unins000.exe" /verysilent /norestart' />
    <remove cmd='%comspec% /c rmdir /S /Q "%programfiles%\UltraVNC"' />

  </package>


Package for UltraVNC 1.0.5.3

A lot has changed since v1.0.2:

  • The norestart-switch is no longer necessary for the installer, only for the un-installer.
  • "winvnc -installs" seems to start servicehelper too.
  • The mirror driver is not installed together with UltraVNC automaticaly. This package example however also also installs/uninstalls it but it can also be put into a seperate package if you want.
  • UltraVNC settings are no longer saved into the registry but in a seperate ultravnc.ini file. So you will have to create that ini file with an existing installation (maybe the one resulting from generating the setup inf file (by using the /saveinf=filename.inf switch)) and copy it into your software directory.

This example automatically copies rc4.key for encryption and MSLogonACL for MSLogon.

 <package 
    id="ultravnc" 
    name="Ultra VNC" 
    revision="1053" 
    priority="45">

   <check type="uninstall" condition="exists" path="UltraVNC 1.0.5.3" />
   <!-- Test for mirror driver -->
   <check type="registry" condition="exists" path="HKLM\SYSTEM\CurrentControlSet\Services\mv2\Start" /> 
		
   <install cmd='net stop uvnc_service'>
     <exit code="0" />
     <exit code='2' />
   </install>
   <install cmd='sc delete uvnc_service' />
   <install cmd='%SOFTWARE%\UltraVNC\UltraVNC_1.0.5.3_Setup.exe /verysilent /loadinf="%SOFTWARE%\UltraVNC\ultravnc_server.inf"' /> 
   <install cmd='cmd /c copy /Y %SOFTWARE%\UltraVNC\ultravnc.ini "%PROGRAMFILES%\UltraVNC"' />
   <install cmd='cmd /c copy /Y %SOFTWARE%\UltraVNC\rc4.key "%PROGRAMFILES%\UltraVNC"' />
   <install cmd='"%PROGRAMFILES%\UltraVNC\MSLogonACL.exe" /i /a %SOFTWARE%\UltraVNC\MSLogonACL' />
   <install cmd='%comspec% /c start /WAIT "Mirror Driver Install" /D"%ProgramFiles%\UltraVNC\driver\XP" "%ProgramFiles%\UltraVNC\driver\XP\setupdrv.exe" install' />
   <install cmd='"%PROGRAMFILES%\UltraVNC\winvnc.exe" -installs' />
		
   <upgrade cmd='net stop uvnc_service'>
     <exit code="0" />
     <exit code='2' />
   </upgrade>
   <upgrade cmd='sc delete uvnc_service' />
   <upgrade cmd='cmd /c mkdir "%PROGRAMFILES%\UltraVNC"'>
     <exit code="0" />
     <exit code="1" />
   </upgrade>
   <upgrade cmd='sc delete uvnc_service' />
   <upgrade cmd='%SOFTWARE%\UltraVNC\UltraVNC_1.0.5.3_Setup.exe /verysilent /loadinf="%SOFTWARE%\UltraVNC\ultravnc_server.inf"' /> 
   <upgrade cmd='cmd /c copy /Y %SOFTWARE%\UltraVNC\ultravnc.ini "%PROGRAMFILES%\UltraVNC"' />
   <upgrade cmd='cmd /c copy /Y %SOFTWARE%\UltraVNC\rc4.key "%PROGRAMFILES%\UltraVNC"' />
   <upgrade cmd='"%PROGRAMFILES%\UltraVNC\MSLogonACL.exe" /i /a %SOFTWARE%\UltraVNC\MSLogonACL' />
   <upgrade cmd='%comspec% /c start /WAIT "Mirror Driver Install" /D"%ProgramFiles%\UltraVNC\driver\XP" "%ProgramFiles%\UltraVNC\driver\XP\setupdrv.exe" install' />
   <upgrade cmd='"%PROGRAMFILES%\UltraVNC\winvnc.exe" -installs' />

   <remove cmd='%comspec% /c start /WAIT "Mirror Driver Uninstall" /D"%ProgramFiles%\UltraVNC\driver\XP" "%ProgramFiles%\UltraVNC\driver\XP\setupdrv.exe" uninstall' />
   <remove cmd='net stop uvnc_service'>
     <exit code="0" />
     <exit code='2' />
   </remove>
   <remove cmd='sc delete uvnc_service' />
   <!-- Actually Delete mirror driver service as setupdrv doesn't seem to do that -->
   <remove cmd='sc delete mv2' />
   <remove cmd='%ProgramFiles%\UltraVNC\unins000.exe /verysilent /norestart' />
 </package>

Package for UltraVNC 1.0.2

<package
    id="ultravnc"
    name="Ultravnc 1.0.2"
    revision="1"
    reboot="false"
    priority="2">
 <check type="uninstall" condition="exists" path="UltraVNC v1.0.2" />
 <install cmd='%SOFTWARE%\UltraVNC-102-Setup.exe /verysilent /norestart /SP-' />
 <install cmd='%ProgramFiles%\UltraVNC\winvnc.exe -sinstall' />
 <install cmd='%ProgramFiles%\UltraVNC\winvnc.exe -servicehelper' />
 <upgrade cmd='%SOFTWARE%\UltraVNC-102-Setup.exe /verysilent /norestart /SP-' />
 <remove cmd='%ProgramFiles%\UltraVNC\winvnc.exe -remove' />
 <remove cmd='%ProgramFiles%\UltraVNC\unins000.exe /SILENT' />
</package>

Note that you can save changes to the defaults by saving an inf file during setup (by using the /saveinf=filename.inf switch), then retrieve them during deployment (using the /loadinf=filename.inf switch).

There is a problem with installation of UltraVNC Mirror Driver on some computers - installation freezes.


UltraVNC 1.0.2 Mirror Driver

The mirror driver is included in the regular installer. It does not need to be installed separately.


UltraVNC 1.0.2 Alternative installation

I couldn't install it with the UltraVNC installer on some machines - it was hanging all the time.

Here's a batch script which:

  • copies UltraVNC directory to %PROGRAMFILES% (available in UltraVNC-102-Bin.zip)
  • removes the service - if you had any other VNC servers installed in the past, this step might be helpful to avoid potential conflicts
  • adds the service
  • adds registry entries - after configuring the server (password, access etc., copy \\HKEY_LOCAL_MACHINE\SOFTWARE\ORL\WinVNC3\)
  • starts the service
  • uses "echo" to exit with code 0
%SOFTWARE%\robocopy %SOFTWARE%\UltraVNC\UltraVNC C:\Programme\UltraVNC /MIR /W:3 /R:3 >nul
C:\Programme\UltraVNC\winvnc.exe -remove
C:\Programme\UltraVNC\winvnc.exe -sinstall
regedit /s %SOFTWARE%\UltraVNC\VNCHooks_Settings.reg
regedit /s %SOFTWARE%\UltraVNC\ultravnc.reg
net start WinVNC
echo


Windows Firewall

When installing silently the Windows Firewall won't prompt you to allow the VNC Server. You can script allowing traffic to the VNC server (on TCP port 5900, from all sources) using:

netsh firewall add portopening TCP 5900 "VNC server" enable all