Windows 10 中屏幕在屏幕睡眠后移动

Windows 10 中屏幕在屏幕睡眠后移动

当我唤醒进入睡眠状态的屏幕时(计算机本身并未进入睡眠状态),所有窗口都会移动到一个屏幕上。如何在 Windows 10 中解决此问题?此答案[1]不起作用。还有另一个答案[2]适用于 Windows 10 之前版本。我有一个新的 Nvidia GPU。我有 3 个显示器、2 个 Display Port 和 1 个 HDMI。

答案1

我认为这可能是 Windows 中使用 Display Port 的一个错误。
当通过 Display Port 连接的显示器进入睡眠状态时,Windows 几乎将其视为物理断开连接。
即使您只使用一个显示器也会导致问题:程序窗口被移动和调整大小,一些窗口出现错误,等等。


您可以尝试在 Windows 注册表编辑器中修复。打开它并导航到: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration\
在较旧的 Windows 10 版本中,那里曾经有一个以名称开头的“文件夹”(键):
SIMULATED_(...)
在较新的版本中,它可能是:
NOEDID_(...)

在这些键内,由于您有三个显示器设置,所以应该至少有三个子文件夹:00和。0102

您要做的是,在PrimSurfSize和上使用适当的值ActiveSize

例如,对于 1080p 分辨率:

00\PrimSurfSize.cx => 1920 decimal
00\PrimSurfSize.cy => 1080 decimal
00\00\PrimSurfSize.cx => 1920 decimal
00\00\PrimSurfSize.cy => 1080 decimal
00\00\ActiveSize.cx => 1920 decimal
00\00\ActiveSize.cy => 1080 decimal

对与您的其他显示器相对应的01和文件夹重复上述操作。02

重新启动,希望有帮助=)


如果不起作用,你也可以尝试持久窗口,它试图解决这个问题:

什么是 PersistentWindows?一个名字不太好的实用程序,当显示器显示数量/分辨率调整并恢复到以前的设置时,它会保留窗口的位置和大小。

对于那些在 DisplayPort 和任何其他连接混合运行多显示器的用户,您可以运行此工具,而不必担心在一切恢复正常时重新安排。

答案2

我有 6 台显示器,也遇到了这个问题。根据有关 regkey 位置 Vinícius M 的信息,我做了一些调整,到目前为止,我似乎很幸运,删除了 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration 下的所有配置文件(我有 10-15 个),然后重新启动了我的电脑。然后我重新排列了屏幕,它似乎正常工作了。我认为发生的事情是显示端口无法及时注册以唤醒,它只检测到 3 台显示器,并选择了它认为匹配的配置文件之一。现在我的注册表项中只有一个 6 台显示器配置,所以它似乎运行正常。

答案3

此问题已在 Windows 版本 21287 中修复。要将您的 Windows 更新到此版本,您应该升级到 Windows 11(对我来说,此问题已修复),或加入 Windows 10 Insider 计划并选择“测试版频道”。或者只是等待 Windows 10 版本升级到此版本。

https://devblogs.microsoft.com/directx/avoid-unexpected-app-rearrangement/

相关内容