Update: UltraVNC 1.4.3.6 and UltraVNC SC 1.4.3.6: https://forum.uvnc.com/viewtopic.php?t=37885
Important: Please update to latest version before to create a reply, a topic or an issue: https://forum.uvnc.com/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
- Bluesky/AT Protocol: https://bsky.app/profile/ultravnc.bsky.social
- Facebook: https://www.facebook.com/ultravnc1
- X/Twitter: https://x.com/ultravnc1
- Reddit community: https://www.reddit.com/r/ultravnc
- OpenHub: https://openhub.net/p/ultravnc

Modifications to UltraVNC

Developers may discuss here
Post Reply
LarryM
Posts: 3
Joined: 2018-11-14 17:02

Modifications to UltraVNC

Post by LarryM »

I have started looking at UltraVNC as a possible solution for a remote viewing and access application requirement we have, but I would need for the VNC server to get the pixel data that it sends from an image buffer which our software updates rather than from the system desktop or any specific window. I have managed to build the the winvnc project source and started stepping though it. Can someone here tell me where to find the code that I would need to change to make UltraVNC work the way we want?

Thank You


Larry
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6867
Joined: 2004-04-23 10:21
Contact:

Re: Modifications to UltraVNC

Post by Rudi De Vos »

There are several changes.
-screensize need to become imagesize
-same for color depth
-bitmap pointer
Mouse/keyboard... works on screen with screen coordinates
Not a simple change of buffer...
LarryM
Posts: 3
Joined: 2018-11-14 17:02

Re: Modifications to UltraVNC

Post by LarryM »

I realize that there are a number of changes that need to be made, but I was hoping to get an idea of where in the code to start looking. We have a software application which controls a camera and displays live video, and we need to allow remote viewers to see the video and do certain actions to control the camera, but we cannot allow the remote viewer to take control of the host computer, access arbitrary files, etc.. Data security is an important issue for us, so we need to strictly restrict what remote users are allowed to see and do.

Thank You


Larry
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6867
Joined: 2004-04-23 10:21
Contact:

Re: Modifications to UltraVNC

Post by Rudi De Vos »

Single user/ multi user ?
Does your camera app can be controled with sendmessage().
Like up/down/left/right in that case you could filter all input and only handle cursor keys or mouse moves.
What's the fomat of the image buffer RGBA ?

Basic this is the same as working with ddegine or the mirror driver.
They provide an image buffer and the changed rectangles. You should make something that does the same
Put the image in a buffer, add a fullsize reactable and loop this with x FPS
Then you also need fake screensize and depth function to simutale a screen with your camera bitmap size.
Nice project, have fun.
LarryM
Posts: 3
Joined: 2018-11-14 17:02

Re: Modifications to UltraVNC

Post by LarryM »

I do not have all of the requirements yet, but our app will need to support multiple concurrent client, and it will not be allowed to show the host's desktop or allow any generic control of the host computer or file transfer. After some investigation of the UltraVNC source code and discussion, I think that I will be modifying the code to do blits from the DC of a specific window which belongs to our software instead of the system desktop DC. I will also have to redirect mouse and keyboard events to our software to handle them in its context.

Thank You

Larry
Post Reply