Ok, so you can fix x11vnc by just getting a more recent version that what's in the latest version of stretch.
You can't get it with apt-get install, probably because there seems to be a push to use realvnc instead.
Ok, fine, but they are not equivalent, especially if you want to use the more advanced features.
I do like that realvnc will support multiple, vitrual displays. So, I can run multiple, Qt applications in full screen mode. Users can vnc connect to associated displays using the :port suffix on the hostname. I want to use that!
But, I can't do things that are necessary for what I'm doing.
For example, I use rpis that do little more than drive a display and show the remote desktop of another networked pi. I don't want any dependency on whether the vncserver pi boots before or after the vnc client pi. The vnc client should show the desktop of the vnc server p when it boots, or if it comes up first, when the vnc server pi (and my application) start..
I've accomplished this with x11vnc by the use of a reverse connection.
The vncserver pi starts vncserver on boot. Later, an application checks to see if the vnc client(s) have already connected. If so, that's fine. If not, the server booted before the client(s) initiated a vncviewer connection. So, a reverse connection is done.
This all works fine with x11vnc, but when I'm having lots of trouble trying to do the same thing with realvnc.
When I try to do a reverse connection with realvnc server, a new server instance is created. That's not what I want. I want listening clients to initiate a connection to the server that's already running. Can I do that with realvnc server?
So, maybe I could just issue an ssh command from my application running on the vnc server instead of using the reverse connection feature. But, It seems you can't launch a realvnc viewer from a script? You have to get use the graphical widget?
So, I figured I'd try using xtightvncviewer with the realVnc server. This works, if I let it prompt for a password, but authentication fails if I try using a file generated by vncpasswd. No clue why--I'm using VncAuth Authentication on the server.
Any help with the following would be appreciated:
1) Do a reverse connection without starting a new server--just tell a listening viewer to connect to an existing server
2) How to launch a realvnc viewer from a script (with no user intervention)
3) how to get a 3rd party viewer (running on rpi stretch) like xtightvncviewer to connect withouth user intervention
At least if I end up sticking with x11vnc, others will know that it can be a bit of hassle to get realvnc working if you are launching servers and viewers from scripts or applicatiion software.