/build/static/layout/Breadcrumb_cap_w.png

UltraVNC 1.0.8 Silent Install

The silent (or verysilent), installs of VNC still display some dialogue or progress bar. We want the install to be completely silent with no GUI or user internaction.

We're using Kace to push, but I've tried locally with a batch file and get the same not-so-silent GUI with progress bar.

We're thinking maybe VNC is impossible to install silently - at least with the native options - in order to prevent someone from sneaking it in on a user.

Any help, suggestions or information on options is greatly appreciated.

Thanks!


Command line from VNC to install their product silently


[localPath]\UltraVNC_1.0.8.0_Setup_32.exe /loadinf=[local path]\ultravnc.inf" /verysilent



I'm a user of AutoIT and started a script this afternoon, but didn't get back to it before I left for the day. I spent all of 5 minutes on below when I was still at the office, so I have no clue how bad or good it may currently be.

Beginning of the AutoIT script

#NoTrayIcon


DirCreate(@TempDir & "\UltraVNC1082inst")
FileInstall("Z:\Scripts\AutoIT\_InProgress\VNC\Files\UltraVNC_1.0.8.0_Setup_32.exe", @TempDir & "\UltraVNC1082Inst")
FileInstall("Z:\Scripts\AutoIT\_InProgress\VNC\Files\UltraVNC.ini", @TempDir & "\UltraVNC1082Inst\UltraVNC.ini")
FileInstall("Z:\Scripts\AutoIT\_InProgress\VNC\Files\UltraVNC.inf", @TempDir & "\UltraVNC1082Inst\UltraVNC.inf")


DirCreate(@ProgramFilesDir & "\UltraVNC")
FileCopy(@TempDir & "\UltraVNC1082Inst\ultravnc.ini", @ProgramFilesDir & "\UltraVNC\ultravnc.ini")
FileCopy(@TempDir & "\UltraVNC1082Inst\ultravnc.inf",

Run(@ComSpec & " /c " & @TempDir & "\UltraVNC1082Inst\UltraVNC_1.0.8.0_Setup_32.exe /verysilent", "", @SW_HIDE)

RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\ORL\WinVNC3\Default", "Password", "REG_DWORD", "[HEX NUMBER REMOVED]")
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\ORL\WinVNC3", "MSLogonRequired", "REG_DWORD", "0")
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\ORL\WinVNC3", "NewMSLogon", "REG_DWORD", "0")
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\ORL\WinVNC3", "DisableTrayIcon", "REG_DWORD", "0")
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\ORL\WinVNC3\Default", "AllowEditClients", "REG_DWORD", "0")
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\ORL\WinVNC3\Default", "AllowProperties", "REG_DWORD", "0")
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\ORL\WinVNC3\Default", "AllowShutdown", "REG_DWORD", "0")

IniWrite(@ProgramFilesDir & "\UltraVNC\ultravnc.ini", "admin", "QuerySetting", "4")


0 Comments   [ + ] Show comments

Answers (3)

Posted by: cserrins 14 years ago
Red Belt
0
Here is some code that I have not updated in awhile. I would install ultra on a machine, configure it to use the .ini file and create the acl.txt file, then I put that directory with this script. Just as a side note, my _kboxupdate function just calls kbscriptrunner to run so that the machine inventory gets updated immediately. Also, the purpose of checking the process "winvnc" initially is in case there is an older version installed. The uninstall strings were simply so that I could tie a signature to the install file. Since I didn't actually install it, it wasn't present, so I added it.

#NoTrayIcon
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_UseUpx=n
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#cs ----------------------------------------------------------------------------

AutoIt Version: 3.3.0.0
Author: Corey A. Serrins <cserrins@kace.com>


Script Function:
Helper script to install UltraVNC.

#ce ----------------------------------------------------------------------------

$os=@OSVersion
$arch=@OSArch
$install=False
If ProcessExists("winvnc.exe") Then
RunWait('net stop uvnc_service', "", @SW_HIDE)
ProcessWaitClose("winvnc.exe")
DirRemove(@ProgramFilesDir & "\UltraVNC", 1)
EndIf

DirCopy(@ScriptDir & "\UltraVNC", @ProgramFilesDir & "\UltraVNC", 1)
regWrite("HKEY_CLASSES_ROOT\.vnc","","REG_SZ","VncViewer.Config")
regWrite("HKEY_CLASSES_ROOT\VncViewer.Config","","REG_SZ","VNCviewer Config File")
runwait('"' & @ProgramFilesDir & "\ultravnc\winvnc.exe" & '" -install',@ProgramFilesDir & "\ultravnc",@SW_HIDE)
regWrite("HKEY_LOCAL_MACHINE\SOFTWARE\ORL\WinVNC3")
runwait('"' & @ProgramFilesDir & "\ultravnc\MSLogonACL" & '" /i /o "c:\Program Files\UltraVNC\acl.txt"', @ProgramFilesDir & "\UltraVNC",@SW_HIDE)

RunWait('net start uvnc_service', "", @SW_HIDE)


runwait('"' & @ProgramFilesDir & "\ultravnc\winvnc.exe" & '" -servicehelper',@ProgramFilesDir & "\ultravnc",@SW_HIDE)
runwait('"' & @ProgramFilesDir & "\ultravnc\winvnc.exe" & '" -startservice',@ProgramFilesDir & "\ultravnc",@SW_HIDE)




Select
Case $os = "WIN_xp"
Select
Case $arch = "x86"
RunWait ('"' & @ProgramFilesDir & "\UltraVNC\drivers\xp\setupdrv.exe" & '" install', @ProgramFilesDir & "\UltraVNC\drivers\xp",@SW_HIDE)
Case $arch = "x64"
RunWait (@ProgramFilesDir & "\UltraVNC\drivers\xp64\setupdrv.exe" & '" install', @ProgramFilesDir & "\UltraVNC\drivers\xp64",@SW_HIDE)
EndSelect
Case $os = "win_vista"
Select
Case $arch = "x86"
RunWait (@ProgramFilesDir & "\UltraVNC\drivers\vista\install.bat", @ProgramFilesDir & "\UltraVNC\drivers\vista",@SW_HIDE)
Case $arch = "x64"
RunWait (@ProgramFilesDir & "\UltraVNC\drivers\vista64\install.bat", @ProgramFilesDir & "\UltraVNC\drivers\vista64",@SW_HIDE)
EndSelect
EndSelect

$uninstall_string = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\UltraVNC"

RegWrite($uninstall_string, "DisplayName", "REG_SZ", "UltraVNC (Windows)")
RegWrite($uninstall_string, "DisplayVersion", "REG_SZ", "1.0.6.5")
RegWrite($uninstall_string, "Publisher", "REG_SZ", "UltraVNC")

_KBoxUpdate()
_SelfDelete()

Func _KBoxUpdate()
If FileExists(@ProgramFilesDir & "\KACE\KBOX") Then
RunWait(@ProgramFilesDir & "\KACE\KBOX\KBScriptRunner.exe")
EndIf
EndFunc


Func _SelfDelete($iDelay = 0)
Local $sCmdFile
FileDelete(@TempDir & "\scratch.bat")
$sCmdFile = 'ping -n ' & $iDelay & '127.0.0.1 > nul' & @CRLF _
& ':loop' & @CRLF _
& 'del "' & @ScriptFullPath & '"' & @CRLF _
& 'if exist "' & @ScriptFullPath & '" goto loop' & @CRLF _
& 'del ' & @TempDir & '\scratch.bat'
FileWrite(@TempDir & "\scratch.bat", $sCmdFile)
Run(@TempDir & "\scratch.bat", @TempDir, @SW_HIDE)
EndFunc
Posted by: noelpd 12 years ago
Orange Belt
0
Some information that I found that helped me out I got directly from the site..

If you need to install UltraVNC on a large number of computers, you might consider automating the installation.

The following command line parameters can be passed to the setup:
/dir="Dirname"
Sets installation directory to Dirname.
/no restart
Suppresses a reboot at the end of the installation.
Not required since the installation no longer requires are boot.
/silent or /very silent
Suppresses either pop-up of dialog boxes or any GUI at all.
/loadinf="Filename"
Loads the configuration file Filenamefor the installation.
This configuration file can be generated by going through setup with UltraVNC-xxxx-Setup.exe /saveinf="Filename".
Filename should be fully qualified.
/log
Writes a log file to the Temp directory.
Could be used for debugging.
Posted by: Roonerspism 12 years ago
Second Degree Brown Belt
0
Newest version of uVNC 1.0.9.6.2 comes packaged as MSI with silent functionality I thought?http://www.uvnc.com/downloads/ultravnc/100-download-ultravnc-10962.html

Comments:
  • newest version do have a msi. any idea how to deploy this ( with uvnc server settings). - binuani 12 years ago
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ