我目前遇到了一个麻烦的小问题。我开发了一个应用程序,将DXGI模式描述结构归零,并调用FindClosestMatchingMode(),如广告所述,“朝向桌面分辨率”。如果笔记本电脑完全在自己的显示器上运行,这很好用--但只要我插入另一台显示器,它就会失控。如果我扩展我的桌面,它仍然会正确地获取笔记本电脑的分辨率,但附加的显示器(运行1080p)将会偏爱800 * 480 :)(当然,是穷人的16:10,但...)。即使它们的分辨率相同,使用克隆/组合的监视器进行相同的操作(结果为1个输出设备)也会产生相同的800 * 480垃圾。怎么回事?是否有人找到了通过DXGI正确获取显示器当前模式或指针的方法,以解决此问题?D3D9时代更容易些 =) - 更新:事实证明,任何在外部显示器上属于IDXGIOutput实例的FindClosestMatchingMode()调用都会与内部显示器不同(在大多数情况下是错误的),即使它们的本机分辨率相同。最重要的是,其他系统没有这个问题,但我无法绕过支持这个特定的笔记本电脑,包括它的驱动程序。是时候进行一个好的设置对话框了。