Windows 7 更新 KB4034664(2017 年 8 月)后在多个屏幕上显示问题
Display issues on multiple screens after Windows 7 Update KB4034664 (August 2017)
我们应用程序的用户一直遇到他们的 Swing GUI 无法正确绘制的问题。
所有遇到问题的用户之间的共同点 link 是他们最近应用了 Windows 更新。用户报告对话框在某些显示器上正确绘制,但在其他显示器上不正确。
我们遇到的种类问题的一个例子*:
用户还报告对话框只显示一个框架,否则是透明的。如果 UI 线程被阻塞,您会遇到同样的问题。
可能是什么问题?
*我不能 post 我们实际应用程序的屏幕截图,因为它包含敏感信息
更新: 此问题已在更新 KB4039884.
中修复
这似乎是由最近的补丁引起的一个相当广泛的问题。不限于 Java:
It seems, that Microsoft’s Update KB4034664 (and KB4034679) for
Windows 7 and Windows Server is causing display issues with several
applications on a second screen.
Born City, Computer World, and Microsoft themselves 报道:
If a machine has more than one monitor connected and the screen
numbering is not in sequence, some applications will experience
rendering issues.
回滚补丁应该可以解决问题。这是一个安全更新(上面的链接详细说明了包含的内容),因此如果您特别厌恶风险,您可能不想这样做。
Microsoft 将解决方法列为:
- Enable Desktop Composition (needs graphics card support).
- Make sure that the main monitor is on the top left in the monitor layout.
您也可以尝试切换到单一显示器设置,或对显示器配置进行其他更改(控制面板 > 显示 > 更改显示设置)。一些报告推测将哪个显示器设置为您的 'main display' 可能会有所不同。
您可能还想尝试以下标志:-Dsun.noddraw=true
我们应用程序的用户一直遇到他们的 Swing GUI 无法正确绘制的问题。
所有遇到问题的用户之间的共同点 link 是他们最近应用了 Windows 更新。用户报告对话框在某些显示器上正确绘制,但在其他显示器上不正确。
我们遇到的种类问题的一个例子*:
用户还报告对话框只显示一个框架,否则是透明的。如果 UI 线程被阻塞,您会遇到同样的问题。
可能是什么问题?
*我不能 post 我们实际应用程序的屏幕截图,因为它包含敏感信息
更新: 此问题已在更新 KB4039884.
中修复这似乎是由最近的补丁引起的一个相当广泛的问题。不限于 Java:
It seems, that Microsoft’s Update KB4034664 (and KB4034679) for Windows 7 and Windows Server is causing display issues with several applications on a second screen.
Born City, Computer World, and Microsoft themselves 报道:
If a machine has more than one monitor connected and the screen numbering is not in sequence, some applications will experience rendering issues.
回滚补丁应该可以解决问题。这是一个安全更新(上面的链接详细说明了包含的内容),因此如果您特别厌恶风险,您可能不想这样做。
Microsoft 将解决方法列为:
- Enable Desktop Composition (needs graphics card support).
- Make sure that the main monitor is on the top left in the monitor layout.
您也可以尝试切换到单一显示器设置,或对显示器配置进行其他更改(控制面板 > 显示 > 更改显示设置)。一些报告推测将哪个显示器设置为您的 'main display' 可能会有所不同。
您可能还想尝试以下标志:-Dsun.noddraw=true