How To Fix Redrawing Problems In Your VNC

Posted by Artem Russakovskii on May 18th, 2009 in Stuff

The Problem

If you use VNC to remotely connect to your machines and are having problems with certain applications not showing changes (redrawing), this will, hopefully, solve the problem for you.

The symptoms are simple: you load a program but only the program outline and maybe the first frame would show up. After that, nothing would update, even though the user in front of the remote computer can see everything updating fine. For me, it is happening with all Java based programs (SmartSVN, Charles – amazing program btw!, etc). Here's what's happening to my Charles application – it never even sent the first frame, simply showing the desktop and not updating:


The problem may be confined to RealVNC only, or at least any VNC program that uses a special mirror driver. You can tell whether your VNC server uses a mirror driver by looking at your Settings->Desktop options under "Optimise screen capture (mirror driver)":


The Solution

I'm not sure if it's Java's fault or the mirror driver's but, as it turns out, the mirror driver does not properly work with Java based programs, at least at the moment. Disabling it, or switching to application hooking fixes the problem. There is most likely a benefit in using a mirror driver as it is probably optimized better than other methods, but it's not worth keeping if you are having problems with it.

The easiest way to disable the setting is to uncheck the checkbox above. You can also alternatively go to Expert options, find the UpdateMethod variable, and switch it to 0 or 1. I am fairly confident the setting of 1 is less resource intensive than 0, so I went with it.


My Java programs are fixed and redrawing fine now.

● ● ●
Artem Russakovskii is a San Francisco programmer and blogger. Follow Artem on Twitter (@ArtemR) or subscribe to the RSS feed.

In the meantime, if you found this article useful, feel free to buy me a cup of coffee below.

  • ric-cz

    geez man! i've been getting white hair because of this and you've just saved me! thank you very much! it really helped!

  • Paul


    Many of my AIR apps do not show, now they DO. This is great. Thank you very much.


  • Alec C

    I've updated Mozilla Firefox to the latest release 10-10-2011, if this is running on the machine I want to connect to I get a black screen and nothing else – Switch of Firefox and all is OK. I'm using the free version of VNC on XP Pro. Does anyone know a fix for this please.

  • Woongah

    It worked for me too… if I'm correct, the problem is that the mirror driver looks for the use of some higher level system primitives, to recognize the newly drawn parts of the screen and spare some operations, but Java does not use any of these.

    The only ones it uses are those for drawing the window borders (which, one may notice, are the only thing that change with the OS in java GUIs), for the rest it does all by itself on the pixel level.

    As a result, the mirror driver can't "see" that Java paints new things inside the frames and does not, and will never, show it.

  • Stevland

    Thank you so much for taking the time to post this. RealVNC's Knowledge Base was useless when it came to this issue. Your post has potentially saved me a ton of time, so a few moments to say 'thank you' seemed in order.

  • MJ

    This also worked for me on latest .5.0.5 release – many thanks for posting!

  • TKerouac

    I thought I had this problem. I do know what problem you are describing — before it's fixed no screen updates occur unless you select REFRESH on the top bar of RealVNC. My frequent frustration seemed related but it isn't: drop-down menus don't drop down. I found the solution to this in RealVNC. I administer multiple computers. Sometimes, on some of them, I will change the RealVNC option in the PRIVACY tab to "Blank screen while users are connected". I just discovered that when I have enabled the "Blank screen" option, my connection will not display some or all drop-down menus. Strange! I've had this problem for at least a couple of years. It's infrequent that I enable the "Blank screen" option. Now I've put two and two together and I can reproduce the problem and 'solve' it by disabling the "Blank screen" option

    • Chris Knight

      OMG. I've been trying to solve this problem forever and it never occurred to me that it might be related to the blank screen option. Thank you, thank you, thank you.

    • Josh B

      Jeez I've been plagued with this problem for years! Thank you!!!!!!