Why does TOUCH not work like MOUSE events for disable?

Here you will find help for frequently asked questions as well as for your specific question.

Why does TOUCH not work like MOUSE events for disable?

Postby JonathanS » 2021-04-14 04:57

The goal is to disable user INPUT on the SERVER SIDE when someone has connected remotely ...
- works great to disable keyboard/mouse
- works great to disable the screen (goes blank)
But for some strange reason if the screen is a TOUCH SCREEN enabled device (which most of our kiosks are) even if the INPUT is disabled and SCREEN is blank if the user PRESSES their input is still active and causes problems when we have remotely connected.

Is this a DEFECT in UltraVNC? Is there a separate option for TOUCH? Do I need to configure my TOUCH differently?

Any help, feedback, or suggestions would be greatly appreciated!
Thanks,
JonathanS
8
8
 
Posts: 12
Joined: 2021-04-05 13:26

Re: Why does TOUCH not work like MOUSE events for disable?

Postby Rudi De Vos » 2021-04-14 10:41

Isn't this fixed in the 1.3.3 dev builds. ( Mar 25, 2021)
This code part is in de vnchook.dll, you can use the vnchook.dll from the latest dev build and test it with any release.

Touch generate injected mouse command, but vnc also inject mouse commands.
Some extra filter was added to block also non vnc injected mouse command.
Not tested, i don't have touch screen
Rudi De Vos
Admin & Developer
Admin & Developer
 
Posts: 6377
Joined: 2004-04-23 10:21

Re: Why does TOUCH not work like MOUSE events for disable?

Postby JonathanS » 2021-04-14 18:31

This is fantastic news - we are for sure using a much older version (and mixed) - does this fix require us to upgrade both the CLIENT and SERVER or could we simply upgrade one of them to the latest (1.3.3)? Obviously best to upgrade both to be consistent (know that) but we added custom-code to the solution over the past decades so trying to reduce the risks.
JonathanS
8
8
 
Posts: 12
Joined: 2021-04-05 13:26

Re: Why does TOUCH not work like MOUSE events for disable?

Postby Rudi De Vos » 2021-04-14 20:25

only vnchook.dll, this part is responsible for blocking local input.
It's compatible with the older version of vnc. make sure to copy the correct 32/64 version
Rudi De Vos
Admin & Developer
Admin & Developer
 
Posts: 6377
Joined: 2004-04-23 10:21

Re: Why does TOUCH not work like MOUSE events for disable?

Postby JonathanS » 2021-08-11 13:43

We've attempted to simply drop-and-replace the VNCHook.dll with the one you recommended and it did not resolve the issue - we can still clearly see that TOUCH is enabled and responsive when the screen is black. Could there be some configuration or options we need to set to disable touch for example?

Here is our test environment:
- Edition Windows 10 Enterprise 2016 LTSB Version 1607
- VNC Server (v1.2.1.2)
- VNC Client (v1.2.1.2)
- Rebooted both stations after dropping the new VNCHook.dll
JonathanS
8
8
 
Posts: 12
Joined: 2021-04-05 13:26

Re: Why does TOUCH not work like MOUSE events for disable?

Postby Rudi De Vos » 2021-08-25 19:38

I have been testing with a touchscreen and a touchpad, moves and clickes are blocked.
The hook block all MOUSEEVENTF_FROMTOUCH events.

But for that, the hook must be active
Image
The only thing i can think of is that the hook fail, but then local mouse/keyboard would also not be blocked.

Sorry, but don't see anything i can change for it.
Rudi De Vos
Admin & Developer
Admin & Developer
 
Posts: 6377
Joined: 2004-04-23 10:21

Re: Why does TOUCH not work like MOUSE events for disable?

Postby JonathanS » 2021-09-02 12:10

Our VNC Server configuration looks a bit different from yours - but here are the properties in the ultravnc.ini and it looks as if EnableHook (towards the bottom) is set to 1; if this was failing would there be a log/trace evidence we could check? Could it maybe be a side effect of the version we are using? But all of this is very odd that it only occurs with seemingly double-tap? Have you tried (on debug) to catch the event that is raised when you double-tap quickly and see what it corresponds to in UltraVNC?

[ultravnc]
passwd=
passwd2=
[Permissions]
[admin]
UseRegistry=0
MSLogonRequired=0
NewMSLogon=0
DebugMode=1
Avilog=0
path= C:\Program Files (x86)\UltraVNC
accept_reject_mesg=
DebugLevel=0
DisableTrayIcon=0
rdpmode=0
LoopbackOnly=0
UseDSMPlugin=0
AllowLoopback=1
AuthRequired=1
ConnectPriority=0
DSMPlugin=No Plugin Detected
AuthHosts=
DSMPluginConfig=
AllowShutdown=1
AllowProperties=1
AllowEditClients=1
FileTransferEnabled=1
FTUserImpersonation=1
BlankMonitorEnabled=0
BlankInputsOnly=0
DefaultScale=1
primary=1
secondary=1
SocketConnect=1
HTTPConnect=1
AutoPortSelect=1
PortNumber=5900
HTTPPortNumber=5800
IdleTimeout=0
IdleInputTimeout=0
RemoveWallpaper=0
RemoveAero=0
QuerySetting=2
QueryTimeout=10
QueryAccept=0
QueryIfNoLogon=1
InputsEnabled=1
LockSetting=0
LocalInputsDisabled=0
EnableJapInput=0
kickrdp=0
clearconsole=0
service_commandline=
FileTransferTimeout=1
KeepAliveInterval=0
RemoveEffects=0
RemoveFontSmoothing=0
[admin_auth]
group1=
group2=
group3=
locdom1=0
locdom2=0
locdom3=0
[poll]
TurboMode=1
PollUnderCursor=0
PollForeground=0
PollFullScreen=1
OnlyPollConsole=0
OnlyPollOnEvent=0
MaxCpu=40
EnableDriver=0
EnableHook=1
EnableVirtual=0
SingleWindow=0
SingleWindowName=
JonathanS
8
8
 
Posts: 12
Joined: 2021-04-05 13:26

Re: Why does TOUCH not work like MOUSE events for disable?

Postby Rudi De Vos » 2021-09-02 19:00

This looks ok.

Perhpas....

VNC can use schook and vnchook, but keylocking is only implemented in vnchook

If that's the case rename or remove schook.dll, so vnc is forced to use vnchook
Rudi De Vos
Admin & Developer
Admin & Developer
 
Posts: 6377
Joined: 2004-04-23 10:21

Re: Why does TOUCH not work like MOUSE events for disable?

Postby JonathanS » 2021-10-01 04:01

We attempted to rename/remove schook.dll and it did not change the touchscreen issue - so we did a bit of trial and error ...
- If we use 1.3.4 as-is your fix seems to work (mouse, keyboard, AND TOUCH are disabled)
- but if we take 1.2.1 and drop only VNCHook.dll (as recommended) we see the issue with TOUCH not working again

Is it possible there are more files then just VNCHook.dll which could be needed - or could there be some kind of compatibility issue?
JonathanS
8
8
 
Posts: 12
Joined: 2021-04-05 13:26

Re: Why does TOUCH not work like MOUSE events for disable?

Postby Rudi De Vos » 2021-10-01 10:15

What if you drop the 1.2.1 winvnc.exe in the 1.3.4 folder ?
Rudi De Vos
Admin & Developer
Admin & Developer
 
Posts: 6377
Joined: 2004-04-23 10:21

Re: Why does TOUCH not work like MOUSE events for disable?

Postby JonathanS » 2021-10-08 12:03

That actually seems to have worked - we are going to validate if this is a solution we can move forward with but there is a lot of risk in hat complete package replacement (as we have lots of custom code over the past decade in VNC Server/Client which is at risk with he approach of taking the .EXE only.

But it does means that VNCHook.dll is not the only dependency needed no? What other specific files could be required?
JonathanS
8
8
 
Posts: 12
Joined: 2021-04-05 13:26

Re: Why does TOUCH not work like MOUSE events for disable?

Postby Rudi De Vos » 2021-10-11 13:57

Normal 2/3 file are needed
winvnc.exe
vnchook.dll :keyboard blocking + hint screen changes ( All OS)
ddengine.dll :capture screen changes ( win8 >=)

All other are optional and didn't changed for a long time.
Rudi De Vos
Admin & Developer
Admin & Developer
 
Posts: 6377
Joined: 2004-04-23 10:21


Return to General help

Who is online

Users browsing this forum: Bing [Bot] and 15 guests