Solution: Using VNC as a HelpDesk Tool

Flavien Scheurer Scheurer_Flavien "at" cat.com
Fri, 18 Aug 2000 10:06:00 +0000


Hello VNCists,

This is what we have implemented to help our HelpDesk...

References:
-----------
VNC:      3.3.3r7
Language: English and French
OS:       Windows 95 & NT 4 (should be OK on W98/W2K)
Kixtart:  3.55 (http://www.kixtart.org)
IExpress: 2.0 (found in the Internet Explorer Administration Kit,
 http://download.microsoft.com/download/ie501sp1/Install/5.01_SP1/WIN98/EN-US
/i
eak5.exe)

1. Script to start VNC
----------------------
This little script based on Kixtart will start VNC:

; Documentation stripped
SetConsole("Hide")
If InStr(@UserLang,"fr")>0
	$M1="Voulez-vous donner le contrtle"+Chr(10)+"` distance de votre
 bureau?"
	$T1="Activer le contrtle ` distance?"
	$M2=@WkSta+"  -  "+ "at" IPAddress0+Chr(10)+Chr(10)+"Veuillez
 patienter..."+Chr(10)+Chr(10)+"Les agents du HelpDesk ont
 maintenant"+Chr(10)+"la possibiliti de prendre le contrtle de cet
 ordinateur"+Chr(10)+Chr(10)+"Vous pouvez appuyer sur CANCEL ou
 [Ctrl]+[Shift]+[C]"+Chr(10)+"pour annuler le contrtle ` distance."
	$T2="Contrtle ` distance activi"
Else
	$M1="Do you want the HelpDesk to take"+Chr(10)+"remote control of your
 computer?"
	$T1="Activate remote control?"
	$M2=@WkSta+"  -  "+ "at" IPAddress0+Chr(10)+Chr(10)+"Please
 wait..."+Chr(10)+Chr(10)+"The HelpDesk agents are now able"+Chr(10)+"to take
 remote control of your desktop."+Chr(10)+Chr(10)+"You can press CANCEL or
 [Ctrl]+[Shift]+[C]"+Chr(10)+"to stop any active remote control session."
	$T2="Remote Control activated"
EndIf
; Ask user
If MessageBox($M1,$T1,4129,30)<>1
	Shell "%windir%\winvnc -kill"
	Exit
EndIf
; Start VNC
Run "%windir%\winvnc.exe -run"
; Display message
If MessageBox($M2,$T2,4097,3600)=2
	Shell "%windir%\winvnc -kill"
EndIf
; End
Exit


2. Files included in the package
--------------------------------

activa_.nt4   Shortcuts (.LNK) renamed for each OS.
deacti_.nt4   Activate: C:\WINDOWS\KIX32.EXE C:\WINDOWS\vnc.kix
activa_.w95   Shortcut key: Ctrl + Shift + R
deacti_.w95   Deactivate: C:\WINDOWS\WinVNC.exe -kill
              Shortcut key: Ctrl + Shift + C
              I've made 2 versions: one with c:\windows (W95) and one
              with c:\winnt (NT4).

kix32.exe     Kixtart EXE and DLLs (DLLs are only for W95)
kx16.dll
kx32.dll

winvnc.exe    VNC!!!
vnchooks.dll
omnith_.dll   This DLL is renamed (<8Chars)

vnc.kix       Script seen in section 1.

vnchooks.reg  Taken from standard install.

vnc.inf       Installation file (section 3).


3. Installation files (vnc.inf)
------------------------------
Standard INF file to install everything. Replace these ?? with your password
 (hex as found in the registry).
I know there is a way to create icons using SETUP.INI, but I didn't get it...
 that's why I copy those 4 icons!

[Version]
Signature = "$Chicago$"

[DefaultInstall]
CopyFiles = ExeFiles,SysFiles,LnkFiles
AddReg    = VNCReg,RenameLink
DelReg    = DelUserCfg

[DefaultInstall.NT]
CopyFiles = ExeFiles.NT,SysFiles,LnkFiles.NT
AddReg    = VNCReg,RenameLink.NT
DelReg    = DelUserCfg

[VNCReg]
HKLM,"SOFTWARE\ORL\WinVNC3\Default","SocketConnect",65537,01,00,00,00
HKLM,"SOFTWARE\ORL\WinVNC3\Default","AutoPortSelect",65537,01,00,00,00
HKLM,"SOFTWARE\ORL\WinVNC3\Default","InputsEnabled",65537,01,00,00,00
HKLM,"SOFTWARE\ORL\WinVNC3\Default","LocalInputsDisabled",65537,00,00,00,00
HKLM,"SOFTWARE\ORL\WinVNC3\Default","Password",1,??,??,??,??,??,??,??,??
HKLM,"SOFTWARE\ORL\WinVNC3\Default","PollUnderCursor",65537,01,00,00,00
HKLM,"SOFTWARE\ORL\WinVNC3\Default","PollForeground",65537,1
HKLM,"SOFTWARE\ORL\WinVNC3\Default","PollFullScreen",65537,00,00,00,00
HKLM,"SOFTWARE\ORL\WinVNC3\Default","OnlyPollConsole",65537,00,00,00,00
HKLM,"SOFTWARE\ORL\WinVNC3\Default","OnlyPollOnEvent",65537,00,00,00,00

[RenameLink]
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc1",,,%10%"\sta
rt
m~1\programs"
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc1","deacti_.w9
5"
,,"Deactivate Remote Control.lnk"
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc2",,,%10%"\sta
rt
m~1\programs"
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc2","activa_.w9
5"
,,"Activate Remote Control.lnk"
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc3",,,%11%
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc3","omnith_.dl
l"
,,"omnithread_rt.dll"

[RenameLink.NT]
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc1",,,%10%"\pro
fi
les\all users\start menu\programs"
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc1","deacti_.nt
4"
,,"Deactivate Remote Control.lnk"
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc2",,,%10%"\pro
fi
les\all users\start menu\programs"
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc2","activa_.nt
4"
,,"Activate Remote Control.lnk"
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc3",,,%11%
HKLM,"Software\Microsoft\Windows\CurrentVersion\RenameFiles\vnc3","omnith_.dl
l"
,,"omnithread_rt.dll"

[DelUserCfg]
HKU,".DEFAULT\Software\orl"
HKCU,"Software\orl"

[ExeFiles]
vnc.kix
vnchooks.dll
winvnc.exe
kix32.exe
kx16.dll
kx32.dll

[ExeFiles.NT]
vnc.kix
vnchooks.dll
winvnc.exe
kix32.exe

[SysFiles]
omnith_.dll

[LnkFiles]
activa_.w95
deacti_.w95

[LnkFiles.NT]
activa_.nt4
deacti_.nt4

[DestinationDirs]
ExeFiles    = 10
ExeFiles.NT = 10
SysFiles    = 11
LnkFiles    = 10,"startm~1\programs"
LnkFiles.NT = 10,"profiles\all users\start menu\programs"

[SourceDisksNames]
1 = "VNC",,,

[SourceDisksFiles]
vnc.kix      = 1,,32
vnchooks.dll = 1,,32
winvnc.exe   = 1,,32
kix32.exe    = 1,,32
omnith_.dll  = 1,,32
activa_.nt4  = 1,,32
deacti_.nt4  = 1,,32
activa_.w95  = 1,,32
deacti_.w95  = 1,,32

[Strings]


4. Packaging
------------
Using IExpress, you will easily make a single .EXE package that contains all
 the files.


5. Explanations
---------------
This implementation of VNC uses the original software without any
 modifications. Implementation of
security and user's privacy is made by having the user to accept the
 connection. Using simple and
standardised products made it easy to develop and deploy.
We've distributed that package (~ 3'000 PCs) and it's used everyday, even
with
 slow link.
Security concerns are low since the user has to click on OK to activate VNC.
 Then if he/she forget
to stop it, it will time-out after 60 minutes. We don't allow VNC to get
 through the firewall.

We had only one problem so far: IBM Personal Communications is messing up
with
 the
numeric keypad... we get used to.

Flavien Scheurer
---------------------------------------------------------------------
To unsubscribe, send a message with the line: unsubscribe vnc-list
to majordomo "at" uk.research.att.com
See also: http://www.uk.research.att.com/vnc/intouch.html
---------------------------------------------------------------------