I have been fighting a VNC configuration issue for sometime now. Even with the additional recent assistance of a friend/guru more skilled than I, the issue continued to elude me:
Running a TightVNC server on machine "myServer" (WinXPsp2) set to display/port 1, one could use vncviewer on machine "myClient" to connect iff someone is locally logged in to myServer. So if I am logged in locally to the server, on my client I could connect with vncviewer. Logout of the server locally; vncviewer could not establish a connection. Log back in on the server, and vncviewer again connects from the client.
I just finished poring carefully through all permutations of test cases (I have a spreadsheet of test results available) and my remarkable conclusion is this:
(1) When logged out on server, the VNC service reverts to display/port 0. When logged in on server, it honors the port set in the configuration.
(2) When logged out on server, the VNC service reverts to an unknown default password. When logged in on server, it honors the password set in the configuration.
So with the VNC server set to port 1, if I am logged in on the server, vncviewer connects to port 1. If logged out, vncviewer connects only on port 0! Unfortunately, it connects but it will not authenticate, because, as I said above, it not only reverts the port but also the password, and I do not know what the default password is (TightVNC site claims there is no default password).
Note that my test cases include:
- Connecting with and without a putty-secured tunnel.
- Connecting with client on internet and client on intranet.
- Connecting with vncviewer and with a browser.
Is this a known defect? I could find nothing on it with a web search. Is there any workaround so that one could connect with vncviewer?
I've used TightVNC in the past. While it was good in its day, it had its share of "issues", like any other software. Having run into very similar issues with TightVNC passwords, I can say:
Your install is horked.
You'll need to uninstall the service, uninstall the software, and then scour the registry (as it will leave little tidbits lying around). Once you have purged it, reinstall from scratch, set the default password, then "install" it as a service. This should remedy this.
If you have some latitude in the software you are allowed to install, you should reconsider using UltraVNC, which supports TightVNC encoding as well as other nice features (file transfers, auto-screen-scaling, low-CPU video driver hook, etc.)
When logged out, VNC is controlled by the registry entries in HKLM\Software. You may find that when logged in it's looking at HKEY_CURRENT_USER\Software. If so try deleting the TightVNC key from the current user bit of the registry and restart the service. With a bit of luck it will then resort to using the local machine key instead.
JR
There are 2 places where you need to set the logon settings. There is the "User Settings" which is what pops up when you install TightVNC and enter a password, port (if you don't use the default) etc. This is for the currently logged on user.
There is also the "Default Settings" which is under TightVNC/Administration/Show Default Settings. This is where you set the password that enables a login without anyone being logged onto the machine and will allow a connection when no one is logged on. (And it has been installed as a service.)
These settings dialog look like the same thing so it is a little confusing - but they are indeed different settings. This applies to XP, Win2K, I'm not sure about Vista, or Win7 but Windows Server 2008 only allows user mode which makes it unworkable to log on after a reboot.