我有一个大型遗留应用程序,它在我们运行它的每台 Windows 8 机器上显示为永久灰色边框,而其他应用程序的其他窗口准确地使用从桌面背景派生的颜色。对于我的生活,我无法找出原因。
我已经尝试了我最好的 google-fu 来抓取 MSDN 以获取 API 来控制它,但结果是空的。该应用程序看起来与 Windows XP、Vista 和 7 中的所有其他应用程序一样......只是 Windows 8 是灰色的。我们绝对没有添加 Win8 特定代码来处理这个问题。
它在外面只是一个 MFC 窗口,但在里面嵌入了一个 .NET/WPF 组件和一个支持 Direct3D 9 的可视区域。
我最好的猜测是它可能与在窗口中有一个 Direct3D 表面有关,但我无法在任何地方验证这一点。
任何帮助将不胜感激!
谢谢
编辑:灰色与没有焦点的效果相匹配,我们肯定会玩带有窗口焦点的游戏......所以可能就是这样。