C# Managed DirectX报告屏幕分辨率不正确-can';你不喜欢1920x1080吗?

C# Managed DirectX报告屏幕分辨率不正确-can';你不喜欢1920x1080吗?,c#,direct3d,managed,C#,Direct3d,Managed,我在全屏运行托管DirectX程序时遇到了这个问题。它在1920x1080(本机分辨率)中作为无边界窗口运行良好,但当我尝试创建一个全屏1920x1080设备时,我得到一个“应用程序错误”异常。但是它在800x600全屏模式下工作,所以我检查了Manager.Adapters.Default.SupportedDisplayModes的值,支持的最高分辨率是1600x1024,它确实工作。它不提供任何1920宽度的模式 我在谷歌上找不到关于这个问题的任何信息。我有一个nVidia GeForce

我在全屏运行托管DirectX程序时遇到了这个问题。它在1920x1080(本机分辨率)中作为无边界窗口运行良好,但当我尝试创建一个全屏1920x1080设备时,我得到一个“应用程序错误”异常。但是它在800x600全屏模式下工作,所以我检查了Manager.Adapters.Default.SupportedDisplayModes的值,支持的最高分辨率是1600x1024,它确实工作。它不提供任何1920宽度的模式

我在谷歌上找不到关于这个问题的任何信息。我有一个nVidia GeForce GT540M和Windows 7。有人知道这件事吗?有办法吗

进一步说明: 在DirectX Caps查看器下, DXGI 1.1设备\输出\显示模式-显示1920x1080,但低于 Direct3D9设备\显示模式-不显示1920x1080。
我想MDX使用DX9作为其后端?但是为什么DX9不支持1920x1080?

我应该注意,报告的分辨率不是“不正确”,我尝试的所有分辨率都支持,只是缺少本机分辨率1920x1080。可能是因为像素格式?FullHD可能不是所有版本都支持。正如您所注意到的,这可能是因为Direct3D 9的分辨率没有公开,这是驱动程序可以选择的。注意:托管DirectX 1.1是一个古老的版本,不推荐使用。您应该考虑移动到SlimDX(它是作为原始MDX的一个更受支持的版本)、SharpDX或一些其他用于Direct3D访问的托管层。有关更多信息,请参阅博客文章。