初始化Direct3D.设备抛出带有E_NOTIMPL的GraphicsException
本文关键字:NOTIMPL GraphicsException Direct3D 初始化 | 更新日期: 2023-09-27 18:13:05
我使用DirectX SDK在c#中做了一个应用程序。它可以工作,但在安装操作系统后,它不能。
当我尝试初始化Microsoft.DirectX.Direct3D。设备,它抛出microsoft . directx . direct3d . graphicexceptionErrorCode: -2147467263 (0x80004001)
ErrorString: E_NOTIMPL
Windows Embedded 8.1 Industry Pro(但它以前在同一系统上工作-在重新安装之前)
Visual Studio 2015 Community(或Visual Studio 2013 Professional -同样的问题)
代码如下:
PresentParameters pp = new PresentParameters();
pp.SwapEffect = SwapEffect.Discard;
pp.Windowed = true;
device = new Device(0, DeviceType.Hardware, this, CreateFlags.SoftwareVertexProcessing, pp);
我刚刚发现我的错误。我把设备放在控件中,控件没有任何形式。在我将控件添加到主窗体后,它就工作了。下面是代码示例:
public Form1()
{
//Some other staff
this.Controls.Add(myDirect3DControl);
//After that I can initialize the device
}