3

在 virtualbox 中,屏幕分辨率可以是任何东西——甚至像 993x451 等奇怪的东西。我尝试使用 pywin32 更改它,但我失败了::

>>> dm = win32api.EnumDisplaySettings(None, 0)
>>> dm.PelsHeight = 451
>>> dm.PelsWidth = 950
>>> win32api.ChangeDisplaySettings(dm, 0)
-2L

最终是:

DISP_CHANGE_BADMODE

有什么帮助吗?

4

3 回答 3

1

您是否已将虚拟机配置为实际将此模式通告给操作系统?

编辑:如果您更改窗口的大小,VirtualBox 会自动设置新的分辨率。您可以从我相信的主机操作系统设置视频模式提示(在文档中查找),但您需要安装来宾添加。您还可以在使用后备 VESA 驱动程序时添加 VESA 模式。无论哪种方式,似乎这一切都需要从主机操作系统发生,以便来宾操作系统能够使用它。尽管 YMMV,但它看起来并不像一个简单的(非 cmdline 可能不是持久的)方式来配置它。

我还没有测试过,但命令应该是:VBoxManage controlvm

您还可以设置最大来宾操作系统屏幕大小,在深入研究时发现了这一点:VBoxManage setextradata global GUI/MaxGuestResolution xres,yres

高温高压

于 2009-09-11T14:20:04.583 回答
0

您是否将 VirtualBox 设置为自动设置客户端窗口?这可能会导致一些问题。

于 2009-08-28T21:48:16.663 回答
0

我发现这样做的方法是启用从来宾操作系统自动调整客户端大小。然后,在主机操作系统中,以编程方式调整 VM 窗口的大小。这将导致分辨率发生变化。

于 2009-12-30T19:06:43.517 回答