JVNC User Manual

JVNC is a lightweight remote-desktop pair for Windows: JVNC Server runs on the computer you want to control; JVNC Client runs on the computer you are sitting at. It speaks the standard VNC (RFB 3.8) protocol, adds fast change-driven screen updates, two-way file transfer, full Windows-key support (Win+R, Win+E, Win+D and other Win+key shortcuts go to the remote PC, not your own — JVNC is the only VNC-style tool that does this out of the box), and strong security (password, TLS, device certificates, one-time codes). See How JVNC Compares for how this stacks up against TightVNC, UltraVNC, TigerVNC and RealVNC.

Version 1.0 — see the Administrator Guide for installation and the Security Guide for hardening.


1. Quick start

  1. Install JVNC on both computers (see Administrator Guide), or copy the Server and Client folders to the respective machines.
  2. On the computer to be controlled, start JVNC Server. On first start it asks you to set a connection password (you can decline, with a warning). It then starts listening immediately (default port 5900) and sits in the system tray. Its window lists the machine's IP addresses.
  3. On the other computer, start JVNC Client, type the server's IP address and port, click Connect.
  4. You now see and control the remote desktop. Click the screen image once so it has keyboard focus.

Both machines must be able to reach each other on the port (same LAN, VPN, or a router port forward). If you use a port forward, read the Security Guide first.


2. JVNC Server

2.1 Window

Control Purpose
Port TCP port to listen on (default 5900). Change requires Stop → Start.
Start / Stop Start or stop accepting connections.
Confirm incoming files When on, a Save dialog appears for every file a client sends. When off (default), files are saved silently to the folder below.
Save to Folder for automatically accepted files (default Downloads). Duplicate names get a (2), (3)… suffix.
Security… Encryption, device certificates, one-time codes, IP rules, listen address, standard-viewer access. See Security Guide.
Connect to a viewer… Reverse connection: this PC dials a waiting viewer (JVNC Client Listen, or a VNC viewer in listen mode). No port forward needed on this side. Also in the tray menu; ConnectToViewerAtStart in server.json does it automatically at start.
Log Connection events, transfers, security decisions. Also written to %APPDATA%\JVNC\server.log.

2.2 System tray

Closing or minimising the window hides it to the tray; the server keeps running. Right-click the tray icon for:

Only one JVNC Server can run at a time; launching it again simply shows the existing window.

2.3 What the remote user can do

Everything you can do at the keyboard and mouse, including the Windows key and shortcuts such as Win+R. Windows security features still apply: if an elevated (administrator) program or a UAC prompt is in the foreground, injected input is blocked unless JVNC Server itself is running as administrator (the log shows Input injection blocked by Windows).

Multiple monitors are supported: the client can show the whole virtual desktop as one wide image, one monitor at a time, or one full-screen window per monitor (multi-head). The remote PC's audio can be streamed to the client (Audio checkbox).


3. JVNC Client

3.1 Menu bar and connection strip

The connection strip always shows Profile, Host, Port, Connect. Everything else is in the menu bar, grouped by function (most-used first): Connection (connect, wake, auto-reconnect, profiles, listen, security), View (full screen, scale, zoom, quality, monitor, multi-head), Control (view-only, send keys, record/play, audio, privacy screen, chat), Transfer (send/get file, clipboard, auto-print, confirm, folder), Help. In full screen, leave it with Esc, F11, or the escape bar that drops down when you move the pointer to the very top of the screen (handy because F11 is often an Fn key on laptops). Right-clicking the menu/strip shows a quick menu; right-clicking the remote screen sends a right-click to the remote PC.

3.1b Old toolbar reference

Control Purpose
Profile Saved connections (host, port, quality, scale, view-only, audio). Pick one to fill the fields; Save stores the current settings under a name, Del removes one.
Copy link Puts a jvnc://host:port/?… link on the clipboard. Opening such a link (from a browser, email, or shortcut) launches JVNC and connects — the password is never included.
Host Server name or IP. The drop-down remembers previous hosts (most recent first).
Port Server port (default 5900).
Connect / Disconnect
Security… This client's certificate fingerprint, optional stored one-time-code secret, trusted servers.
Zoom Hold Ctrl and scroll the wheel (or pinch on a touchpad) to zoom in/out on the point under the cursor; Ctrl+plus / Ctrl+minus step the zoom and Ctrl+0 resets. When zoomed in, drag with the middle mouse button to pan (plain wheel scrolls, Shift+wheel scrolls sideways). Zoomed past 100 % the picture shows crisp original pixels. Works with Scale-to-fit on or off.
Full screen (F11) Borderless full-screen view on the current monitor. F11 again to return.
Scale to fit Shrink the remote desktop to fit the window (on) or show it 1:1 with scroll bars (off).
Quality Auto (fast): big changes (dragging windows, video, scrolling) are sent as JPEG and cleaned up losslessly tile by tile as soon as each tile stops changing (~¼ s); small changes are always exact. Always lossless: every pixel exact all the time, more bandwidth. Applies to the next connection.
Monitor All monitors (the whole remote desktop as one image) or a single remote monitor. Showing one monitor also makes the server capture and send only that monitor — less bandwidth.
Multi-head Opens one borderless full-screen window per remote monitor, each on one of your local monitors (remote primary on your primary, then left to right). Press F11 inside a window to close it; the main window shows the remaining monitor. Needs at least two local monitors.
Share clipboard text On by default: text you copy on either side appears on the other side's clipboard within about half a second (1 MB max).
Share clipboard files and images On by default: copy a file, folder or picture on one PC and paste it on the other. Files arrive in the received-files folder under Clipboard\ (256 MB per copy max); pictures go straight to the clipboard.
Clipboard history The last 10 texts that went either way; click one to put it on both clipboards again.
Paste clipboard as keystrokes (Ctrl+Shift+V) Types your local clipboard text on the remote PC key by key (about 200 characters/s) - for consoles, VMs and login prompts where the shared clipboard does not reach. Click again to stop.
Transfers… The queue of this session's sends and receives with progress and a Cancel button per item.
Wake PC Sends a Wake-on-LAN packet to the host in the Host box. The PC's MAC address is learned automatically the first time you connect. Works on the LAN/VPN if the PC's BIOS and adapter allow WoL.
Auto-reconnect If the connection drops, keep trying for up to 10 minutes (waking the PC each time); the Connect button becomes Cancel.
Listen + port Reverse connection: wait for a JVNC Server (or any VNC server in "connect to viewer" mode) to dial this computer, default port 5500. On the PC: Connect to a viewer…. Useful when the PC's router cannot be port-forwarded.
Send keys ▾ Key combinations your own PC would intercept: Ctrl+Alt+Del (see note), Win+L, Alt+Tab, Ctrl+Esc, Ctrl+Shift+Esc, Alt+F4, Win+D/E/R, Print Screen — plus Keep Alt+Tab remote, which routes Alt+Tab to the remote PC while the screen image has focus.
View only Watch without sending any input (mouse, keys, text, drops). The server also has Block remote input in its tray menu, which enforces view-only for everyone.
Record / Play… Record the session to Videos\JVNC\<host>-<time>.jvncrec and play it back later inside JVNC.
Privacy screen Blanks the remote PC's own monitors and blocks its keyboard and mouse while you work (you keep seeing the real desktop). The person there can press Esc five times to lift it, and it lifts automatically when you disconnect.
Chat Text chat with the person at the remote PC. On the PC, incoming messages open a chat window; the red session banner can be clicked to chat too.
Auto-print Print jobs sent to the remote PC's JVNC Remote Printer arrive here as PDFs and go to your default printer (if your PDF app can print) or open for you.
Audio + quality Hear what the remote PC is playing (its default output device, "what you hear"). Stereo 48 kHz ≈ 48 KB/s, Mono 24 kHz ≈ 12 KB/s. The remote PC's volume affects what you hear; mute it there and you hear nothing.
Send File… / Get File… File transfer, see §4.
Remember hosts only when connected On (default): a host is added to the drop-down only after a successful connection. Off: every attempt is remembered.
Confirm incoming files / folder Same meaning as on the server, for files the server sends to you.
Status Connection state, negotiated security (e.g. TLS+TOTP), live frame rate and bandwidth, transfer progress.

3.2 Keyboard and mouse

3.3 Status bar numbers

Connected (TLS+TOTP) | 22 fps rx, 22 painted, 1.1 MB/s


4. File transfer

Files can go in both directions; the person at the receiving end decides where they land (or the receiver auto-accepts into its folder — the default).

Send a file to the remote computer

Client: Send File… → pick the file. The server saves it to its Save to folder (or shows a Save dialog if Confirm incoming files is on there — you will see that dialog through JVNC and can drive it remotely). The status bar shows progress and the server's confirmation.

Drag and drop, folders, the queue

Drop files or folders from Explorer onto the remote screen image (any monitor window). Everything is queued (Transfer > Transfers… shows progress and lets you cancel any item) and sent one after another. A folder arrives as the same folder tree (Send a folder… does the same from a dialog; with Confirm incoming files on, the receiver is asked once where the folder should go).

Checking a setup (diagnostics)

Several viewers, layouts, looks (client)

What the viewer sees, privacy at the PC (server tray)

Pairing, support mode, permissions (Security / trust)

Finding, reaching and watching a connection

Touch, pen, relative mouse, macros (Control menu)

Snapshot (View > Snapshot)

Saves what you see as a PNG, from the pixels already on your side (nothing is asked of the remote PC): the viewed area (Ctrl+Shift+S), the whole remote desktop, or a region you drag (Esc / right-click cancels). Files go to Pictures\JVNC (change with Snapshot folder…). Send snapshots to the remote PC also hands each one over as a capture, so its path lands on the remote clipboard - a screenshot of the PC, ready to analyse on the PC. Interval snapshots saves the viewed area every 5/15/60 s into a folder per session (unchanged frames are skipped).

Capture hot-folder (Transfer > Capture hot-folder; server: tray > Capture hot-folder)

For screenshot / capture workflows. Pick a folder to watch; every new file that matches the filter (e.g. *.png;*.jpg) is sent to the other side as a capture: it is saved there with its own name (overwritten next time, so the path is predictable; choose the folder with Save captures … to…, default = received-files folder) and its full path is put on that side's clipboard, ready to paste into a tool. Options: - Folder is shared with the remote PC - nothing is transferred, only the path (rewritten with the remote prefix). - Also copy the remote path to my clipboard - the path on both clipboards. - Auto-type the remote path (+ press Enter) - types it into whatever has focus on the remote PC. - Run a command on each received capture - on the receiving machine only, e.g. "C:\Tools\ocr.exe" --in {path}. Off by default; can only be set by the person at that machine, never remotely. Works in both directions: the server's tray has the same watcher, so captures taken on the PC land on the laptop.

Resume

If the connection drops mid-file, the receiver keeps what it has as <name>.<size>.jvncpart in its folder. Send the same file again and it continues from there ("Resuming … at 63%"). Cancelling a transfer keeps the partial too. (Resume needs auto-accept on the receiving side; with a Save dialog per file it starts over.)

Get a file from the remote computer

Client: Get File… → an Open dialog appears on the remote desktop; choose the file there through JVNC. It is then saved on your computer to your folder (or a Save dialog appears if you enabled Confirm incoming files in the client).

There is no size limit; transfers stream directly to disk, and screen and mouse keep working during a transfer.


5. Settings and files

Item Location
Server settings %APPDATA%\JVNC\server.json
Client settings %APPDATA%\JVNC\client.json
Logs %APPDATA%\JVNC\server.log, client.log (rotate at 2 MB)
Certificates %APPDATA%\JVNC\server.pfx, client.pfx (created on first use)

Secrets (the one-time-code secret) are stored encrypted with Windows DPAPI, tied to your Windows account; copying the settings file elsewhere does not expose them.


6. Troubleshooting

Symptom What to check
Failed: No connection could be made Server not running / wrong IP or port / firewall. On the server, allow JVNC.Server.exe through Windows Firewall (the installer does this) or the port you chose.
Server requires a standard VNC password/TLS handshake… The server is not JVNC (or has JVNC security off and only offers classic VNC types). Use JVNC on both ends, or a standard viewer.
Using a phone / TightVNC / TigerVNC with a JVNC server Server → Security… → Allow standard VNC viewers and Set viewer password…. With encryption on, use a viewer that supports VeNCrypt (bVNC, AVNC, TigerVNC) and accept the server certificate on first connect.
Wrong password Ask the server owner for the connection password (Server → Security… → Set / change password). A remembered password that was rejected is forgotten automatically.
TLS failed… The server has encryption on. On first connect you must accept its fingerprint; compare it with the server's Security dialog. If your certificate is not approved on the server, ask the server owner to approve it (Security → Approve last rejected client).
Server rejected the one-time code Wrong code or clocks differ by more than 30 s. Check the time on both machines; the server's Security dialog shows the current valid code.
Peer closed connection right after connecting Your address is not in the server's allow list, is banned after failed attempts (15 min), or is a public address and the server requires a client certificate for those. Check the server log.
Mouse/keyboard do nothing on the remote PC Server log says Input injection blocked → run JVNC Server as administrator. Otherwise click the screen image to give it focus.
Everything looks slightly soft while moving That is the Auto quality mode; it sharpens as soon as things stop moving. Choose Always lossless in the client if you prefer exact pixels at all times.
Screen updates are slow Reduce the remote resolution or the number of monitors, or use a wired network. The status bar shows whether the network (low MB/s, low fps rx) or your computer (painted ≪ rx) is the limit.
No audio / audio is very quiet The remote PC's own volume and mute state apply (JVNC captures what the PC plays). Some exclusive-mode apps and DRM-protected players bypass the loopback capture.
Multi-head button is greyed out The remote PC has one monitor, or the monitor list has not arrived yet.
Ctrl+Alt+Del does nothing on the remote PC Windows only lets services and specially trusted apps trigger it. Either allow it in Group Policy (Windows Components → Windows Logon Options → Disable or enable software Secure Attention Sequence → Services and Ease of Access applications) or wait for JVNC's service mode. Win+L and Ctrl+Shift+Esc work everywhere.
Windows key opens my Start menu JVNC was not the active window, or the screen image did not have focus. Click on the remote screen first.

Logs in %APPDATA%\JVNC contain the exact reason for any disconnect.