如何在不重启VNC服务器的情况下更改其屏幕分辨率?


Answers:


10

所述的UltraVNC观察者支撑自动缩放,所以它会自动调整观察窗,以显示远程服务器的整个屏幕。

VNC查看器

更新资料

双方的RealVNCTightVNC的显示/桌面缩放。


我正在使用真正的vnc 4.1.3。在哪里可以找到桌面缩放选项?我找不到它。
罗希特·邦加

它不包含在RealVNC Free Edition中,您需要使用Personal或Enterprise版本。请参见功能比较realvnc.com/products/download.html
stukelly 2010年

我已经下载了Ultra vnc查看器。它的工作原理,谢谢。
罗希特·邦加

2
不缩放,而是调整大小,自动更改受控的PC分辨率以匹配控制器屏幕。
realtebo

当心:自动缩放并不会改变远程桌面的分辨率,它只是使像素通过拉伸输出图像更大(或更小)。对于大多数用户而言,除非您有视觉障碍,否则自动缩放几乎没有用。它会显着降低图像质量。在流行的位图编辑器中,它的作用就像缩放窥镜。用户真正想要的是远程会话的真实分辨率更改,到目前为止,所有免费的观看者都只能使用TigerVNC进行更改。请参阅下面的答案。
Espinosa

11

不久前在堆栈溢出上也问过同样的问题:https : //stackoverflow.com/questions/15816/changing-the-resolution-of-a-vnc-session-in-linux

Nathan Fellman接受的答案:

Real VNC服务器4.4包含对Xrandr的支持,该支持允许调整VNC的大小。使用以下命令启动服务器:

vncserver -geometry 1600x1200 -randr 1600x1200,1440x900,1024x768

然后调整大小:

xrandr -s 1600x1200
xrandr -s 1440x900  
xrandr -s 1024x768  

使用TigerVNC客户端,您无需在服务器端设置任何几何形状。我的服务器完全没有任何-randr设置,只是基本运行-geometry 1024x768。此低分辨率仅在您首次连接时使用,然后您可以通过将客户端窗口的大小调整为所需的任何大小,所需的任何疯狂的,非标准的即席分辨率来更改分辨率。我的设置:openSuse 15.1,GDM,KDE Plasma,TigerVNC客户端1.9.0(Windows)
Espinosa

3

如果您需要更改设置而无需重新启动VNC服务器,则可以得到以下效果:

vncconfig -set RandR="1024x768,1600x900"

然后按照fgregg的建议使用xrandr更改分辨率:

xrandr -s 1024x768
xrandr -s 1600x900

1

使用TigerVNC Windows VNC客户端(查看器),开箱即用即可实现自动解析。无需在客户端或服务器上的任何位置进行任何设置。首次连接到服务器时,分辨率设置为服务器端预设的任何分辨率,但是您只需调整客户端窗口的大小即可轻松更改它。您想要的任何分辨率,任何疯狂的,非标准的,临时的分辨率。远程桌面分辨率(例如KDE)可以平稳地遵循客户端窗口的分辨率。

在此处输入图片说明

在此处输入图片说明

检查是否设置了“调整远程会话到本地窗口的大小”。默认情况下应该是。

请不要将自动分辨率更改与图像拉伸混淆,也可以将其称为自动缩放。除非您有视觉障碍,否则这种校准实际上是没有用的。在流行的位图编辑器中,它的作用就像缩放窥镜。它只是通过拉伸输出图像来使像素更大(或更小)。如果拉伸很多,会显着降低图像质量。

用户通常想要的是远程会话的真实分辨率更改。这就是我之前提到的,这就是TigetVNC客户端能够提供的功能,只要服务器具有匹配的功能。自动分辨率可以使任何尺寸的图像保持清晰。缺点是它还会增加网络带宽。

到目前为止,我发现只有TigerVNC可以自动解析。我测试了TightVNC(开源),RealVNC(免费版本)和UltraVNC(开源),但它们都没有运气,它们只能提供最佳的自动缩放功能。

TigerVNC主页:https:
//tigervnc.org/ TigerVNC来源:https
: //github.com/TigerVNC/tigervnc GitHub上的TigerVNC版本
https: //github.com/TigerVNC/tigervnc/releases TigerVNC二进制文件下载:https: //bintray.com/tigervnc/stable/tigervnc/1.9.0

如果只需要查看器,则仅下载查看器,例如vncviewer64-1.9.0.exe,它只是没有捆绑VNC服务器的查看器。请注意,TigerVNC服务器服务会在后台以静默方式自动启动,而我强烈讨厌这是可能的安全威胁。

我的服务器完全没有任何-randr设置,只是基本运行-geometry 1024x768。此低分辨率仅在您首次连接时使用,但是您可以仅通过调整客户端窗口的大小来更改分辨率。如果您感到好奇,这是我完整的VNC服务器命令:

/usr/bin/Xvnc -log *:syslog:30,TcpSocket:syslog:-1 -inetd -MaxDisconnectionTime=5 -securitytypes=none -displayfd 10 -geometry 1024x768 -AllowOverride=Desktop,AcceptPointerEvents,SendCutText,AcceptCutText,MaxDisconnectionTime,MaxConnectionTime,MaxIdleTime,QueryConnect,QueryConnectTimeOut,AlwaysShared,NeverShared,DisconnectClients,SecurityTypes,Password,PlainUsers -query localhost -once -desktop New session -extension MIT-SHM

根据openSuse软件包描述,xorg-x11-Xvnc-openSuse VNC服务器-基于TigerVNC代码构建。所以在我的案例中,TigerVNC客户端与TigerVNC服务器进行了对话,所以也许这就是为什么它们是如此无缝的原因:)

我的客户端设置:TigerVNC客户端1.9.0(Windows)
我的服务器设置:openSuse 15.1,xorg-x11-Xvnc 1.9.0,vncmanager 1.0.2,GDM,KDE Plasma。


0

使用TightVNC(至少)时,如果服务器(窗口)更改了屏幕分辨率,则客户端会自动更改以匹配新的分辨率。


RDP行为是否可能?当控制器连接到受控窗口时,受控窗口os会更改其分辨率。请勿缩放比例或更改分辨率以匹配控制器屏幕的分辨率(至少在外形尺寸上),而不是缩放比例以适合。
realtebo '18年

现在确定是否有可能会很有趣……
rogerdpack

0

对于TightVNC,单击齿轮图标(设置),然后将图片质量更改为“高”,效果很好。


为什么图像质量应该与受控部分上自动改变屏幕分辨率有关?
realtebo

它对我不起作用。刚刚测试。客户端窗口的这种远程驱动分辨率大小是由一些VNC客户端支持,如TigerVNC,但 TightVNC的或RealVNC的(免费版)。我刚刚使用RealVNC Viewer 6.19.715和Windows 2.8.23的TightVNC Viewer对其进行了测试。
Espinosa

0

我收到了一封写给VNC客户服务的正式答复。

简短的版本是:不,您不能更改远程分辨率以自动匹配本地vnc控制器的窗口/屏幕分辨率。

他们告诉我,因为RDP是真正的登录会话,所以屏幕的行为就像您是受控系统中的普通用户一样。

VNC只是镜像屏幕。这不是一件坏事,因为您不能共享RDP会话,但可以共享VNC

我建议在vnc服务器上创建配置以允许更改屏幕,因为我知道Windows API允许第三方sw通过编程方式设置屏幕分辨率。

那我等...

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.