带锁定屏幕的 VNC 会话

带锁定屏幕的 VNC 会话

有没有办法在 Windows 屏幕“锁定”时运行 VNC 会话?

我想在 Windows 机器上启动一个 VNC 服务器,锁定屏幕(以便本地任何人都无法访问它),然后稍后使用 VNC 连接到该机器。

我更喜欢原生的 Windows 锁定,但任何受密码保护的锁都是好的。

答案1

不幸的是,这里有一个概念问题。VNC 的工作原理是在本地计算机上渲染您的桌面,然后有效地拍摄桌面照片并通过网络发送。这意味着 VNC 发送的内容必须在服务计算机上渲染。

虽然 Windows 具有同时托管多个交互式会话的功能,但该功能在非服务器版本中被禁用,而且很少使用。这意味着实际上 VNC 服务器必须发送交互式会话在本地控制台上呈现的内容 - 因此您在 VNC 会话中看到的内容也必须是发送到显示器的内容。

有两种潜在的解决方法:

  1. 位于 Windows 和显卡之间的显示驱动程序垫片,用于将视频数据替换为其他内容,例如空白屏幕。如果您启用了显示消隐,LogMeIn 将使用此方法 - 当 LogMeIn 会话处于活动状态时,它会使用其安装的显示驱动程序有效地断开显示器连接。
  2. 使用 RDP,因为 RDP 会话是 Windows 的本机接口,而不仅仅是“远程桌面”协议 - RDP 和 VNC 之间存在显著的概念差异。(事实上,由于非服务器 Windows 版本一次只允许一个会话,如果有人登录计算机,通过 RDP 登录计算机将强制锁定控制台会话)。

至于选项 1,我不知道有任何 VNC 服务器实现了此功能,但我怀疑它们一定存在。如果没有其他功能,LMI 确实实现了它,正如我提到的那样。

至于选项 2,我认为这很有可能就是您真正应该做的。在大多数情况下,RDP 是性能、安全性和功能方面的更佳选择。例外情况是如果您使用的是 Windows 家庭版,因为只有专业版及以上版本允许您启用 RDP 服务器(尽管它已安装在家庭版中,只是被禁用)。

答案2

这取决于 Windows 版本、安装 VNC 的方式以及 VNC 版本。

首先,您必须安装 VNC 作为服务。

然后对于 Windows Vista 和 7,您必须禁用 UAC 才能让 VNC 解锁屏幕。您不能忘记它,因为如果您不这样做,就会出现一个解释问题的窗口。Windows
XP、2003 和 2008 没有调整。

一些商业版本可以启用 UAC。也许一些 GPL 版本也可以,但我不知道。

答案3

我偶然这样做了...我已通过 VNC 登录并可以看到当前会话,但实际的计算机显示的是锁定屏幕。

我相信发生这种情况是因为我之前启动了一个 RDP 会话,它锁定了屏幕,然后 VNC 正在重新使用该 RDP 会话。

答案4

UltraVNC 具有此功能(登录锁定的屏幕,将其解锁但使显示器处于睡眠模式,并在断开连接时再次锁定)。

https://forum.ultravnc.net/viewtopic.php?t=12319

相关内容