Update: UltraVNC 1.4.3.6 and UltraVNC SC 1.4.3.6: viewtopic.php?t=37885
Important: Please update to latest version before to create a reply, a topic or an issue: viewtopic.php?t=37864

Join us on social networks and share our announcements:
- Website: https://uvnc.com/
- GitHub: https://github.com/ultravnc
- Mastodon: https://mastodon.social/@ultravnc
- Facebook: https://www.facebook.com/ultravnc1
- X/Twitter: https://twitter.com/ultravnc1
- Reddit community: https://www.reddit.com/r/ultravnc
- OpenHub: https://openhub.net/p/ultravnc

Change in window border after re-connecting

Post Reply
jeeejay
8
8
Posts: 9
Joined: 2011-09-27 21:05

Change in window border after re-connecting

Post by jeeejay »

Hello,

I have been happily using Ultra VNC since a long time and currently have version 1.0.9.6 installed and I use it to access our pool of test machines. I hadn't noticed this weird behavior before but off-late some of our new tests started failing randomly. The test captures the screenshot of a particular step that the user is running on our software and compares it with a saved image for verification. These tests fail every now and then complaining that the images did not match. At first glance they look the same but if you look closer then you'll notice that an additional window border is present in the current image. Initially, I had no idea where it came from but finally I figured it out.

You can follow these simple steps:

• Start a VNC session and connect to any machine (all our machines are Win7)
• Open any application (say Internet Explorer) and maximize the window
• Close the session window and then re-connect

Obviously, IE should still be open and maximized but you'll notice a thick border all around. This border is usually visible if any window is in 'Restore' state. The border goes away when the window is maximized. Refer the images below. In case they are not visible, then you can view them directly here: https://picasaweb.google.com/1162166110 ... directlink

Image

Image

So if I remain connected to the machine while our tests are running then they pass. If I happen to close the session while the tests are running (say, at lunch break) and re-connect again while the tests are still running they start failing due to the window border. I have to click Restore and Maximize the window again to make it look normal.

It would be nice if you can try to reproduce this issue and let me know what can be causing this and how to avoid it.

Thanks.

- GJ
jeeejay
8
8
Posts: 9
Joined: 2011-09-27 21:05

Re: Change in window border after re-connecting

Post by jeeejay »

Hello ...

I would appreciate if someone could try to reproduce this and post a response. If anyone would like to know more details then I will be glad to provide them.

- GJ
jeeejay
8
8
Posts: 9
Joined: 2011-09-27 21:05

Re: Change in window border after re-connecting

Post by jeeejay »

Hello again ...

If someone can try this out and report then it'll be really helpful.

- GJ
Bonji
100
100
Posts: 339
Joined: 2008-05-13 14:54

Re: Change in window border after re-connecting

Post by Bonji »

When I follow the steps you detailed, I do not experience the problem you mentioned. My maximized window looks exactly the same as before after reconnecting.

The computer I tested against is running 1.0.9.6.1 so I'm not sure if that's the difference. Also, we are standardizing on 1.1.9.6 so that may be a good place to go as well (whatever the latest version currently is).
-Ben
jeeejay
8
8
Posts: 9
Joined: 2011-09-27 21:05

Re: Change in window border after re-connecting

Post by jeeejay »

Thanks for trying this out. I'll have to wait some time before I can try upgrading and re-testing. I'll update you with what I find.

- GJ
Csimbi
8
8
Posts: 16
Joined: 2008-05-03 15:28

Re: Change in window border after re-connecting

Post by Csimbi »

Hi all,
I have the same problem on 1.2.0.6/Windows 7 x64/mirror driver enabled.

I am using my friend's PC overnight to mine resources on a Flash game.
I have the auto-click script set up and it runs just fine when I am there.
The script is running perfectly on the maximized browser window.
So, I start the script and leave it running.
I go home and look at it via UVNC - and bang - the maximized window is resized, window frame appears -> script stops because pixels have shifted.

When the mirror driver is enabled (on connecting via the viewer), the local screen blinks for a moment (as it there was a resolution change) and the frame appears.
When I install a new graphics driver I have the same problem - so that gave me an idea.
I turned off the mirror driver and the problem is gone.
I took some screenshots in case someone's interested but I think it's very easily reproduced.
Some bugfixes are due in the mirror driver.
Now I have a different problem though: without the mirror driver, the screen is refreshing very slowly and hence the picture quality is pretty bad.
Is there any way to speed up change detection without the mirror driver?
The thing is that I poll full screen - which is supposed to be fast and the PC is pretty fast as well (2600K, processor is nearly idle) so I'm not sure why it'd slow down that much without the mirror driver...
Any help?
Thanks!
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6832
Joined: 2004-04-23 10:21
Contact:

Re: Change in window border after re-connecting

Post by Rudi De Vos »

The flash is from the activation deactivation of the mirror driver, you need to do it with a changedisplay settings...

ON win7 there is no fast solution, that's the reason we used a mirror driver.
ON win8 you have the new capture engine, as fast as a mirror driver and also work with directx ( in win7 you switch in display basic mode when driver is activated)

All win7 hook methods use window messages to detect changes, this works well for menu's, text, window moves etc, but it doesn't
detect image changes like drawpixel.
Fastest for pixels: full scanning without hookdll's active.
Csimbi
8
8
Posts: 16
Joined: 2008-05-03 15:28

Re: Change in window border after re-connecting

Post by Csimbi »

So I need to uncheck hookdll then.
Thank you!
Post Reply