Visual studio 如何使我的应用程序加载正确的d3d9*dll
我已经安装了2010年6月的Direct X SDK,并编写了一个简单的DX应用程序 我已经设置了正确的头include和库include路径,即它们指向Visual studio 如何使我的应用程序加载正确的d3d9*dll,visual-studio,dll,directx,directx-9,Visual Studio,Dll,Directx,Directx 9,我已经安装了2010年6月的Direct X SDK,并编写了一个简单的DX应用程序 我已经设置了正确的头include和库include路径,即它们指向 C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86 一切都很好,但是当我运行应用程序时,我注意到正在加载的d3d*模块是C:\Wind
C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include
C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86
一切都很好,但是当我运行应用程序时,我注意到正在加载的d3d*模块是C:\Windows\SysWOW64\d3d9.dll
&C:\Windows\SysWOW64\d3dx9d_43.dll
我假设与DirectX SDK目录中的LIB链接将确保SDK中的DLL,即C:\Program Files(x86)\Microsoft DirectX SDK(2010年6月)\Developer Runtime\x86
将被加载
我不确定它是否与此相关,但我的应用程序最终得到一个NULL
设备句柄。
如何确保加载了正确的DLL
DXSDK\u DIR=C:\Program Files(x86)\Microsoft DirectX SDK(2010年6月)
添加到环境中%DXSDK\u DIR%\Developer Runtime\x86“
和%DXSDK\u DIR%\Developer Runtime\x64”
添加到系统路径
变量中李>
%DXSDK\u DIR%\Utilities\bin\x86\dxcpl.exe
和%DXSDK\u DIR%\Utilities\bin\x64\dxcpl.exe
)启用调试运行时#在DirectX包含之前,在代码中定义D3D_调试_信息
HKEY\u LOCAL\u MACHINE\SOFTWARE\Microsoft\Direct3D
和HKEY\u CURRENT\u USER\SOFTWARE\Microsoft\Direct3D
。但它很可能无法工作(在比Windows 7更新的Windows上),因为DirectX 9不久前就被弃用了,最近一些更新打破了所有旧东西(甚至是好的ol'PIX)。我听说还有一个选择:使用检查过的Windows版本,但没有尝试过NULL
设备错误可能与所使用的运行时完全无关。如果您无法成功启用调试运行时,并且自己无法调试,请在StackOverflow上发布另一个问题,包括相关代码以及您试图解决的问题,以便我们了解问题所在。