运行DX9程序时出错

时间:2019-07-29 07:33:55

标签: c++ directx-9

我正在尝试从GDMag编译July07 source code

我使用的是Visual Studio 2008和Microsoft DirectX SDK(2010年6月),我设法编译并运行了不同的Direct X项目,但该特定项目无法正常工作。

谷歌搜索表明,这些错误是由文件dinput8.h丢失引起的。但是,SDK仅附带dinput.h,而不附带dinput8.h。

我尝试在Google上搜索dinput8.h文件,但是我只是找到了一个包装文件,该文件已插入我的include文件夹中。但是,此文件的依赖项过多(SDK中也缺少依赖项头文件),因此导致的错误超出了我的理解

我已经正确链接了项目中的.lib文件,所以我不知道如何解决此问题。

致谢

以下是错误:

  

错误LNK2001:未解决的外部符号_c_dfDIJoystick2错误

     

LNK2001:无法解析的外部符号_DirectInput8Create @ 20错误

     

LNK2001:无法解析的外部符号_D3DXCreateFontA @ 48错误LNK2001:

     

未解析的外部符号_IID_IDirectInput8A

1 个答案:

答案 0 :(得分:0)

据我所知,没有dinput8.h。您可以从旧版DirectX SDK或Windows SDK中使用dinput.h,然后与dinput8.lib链接。旧版Direct SDK(2010年6月)不包括对Direct3D 8或更早版本的支持,但可以肯定地支持DirectInput 8(最后一个版本要发布,因此仍被认为是DirectX 9.0c的“最新版本”。)

鉴于您遇到了与[D3DX9]不推荐使用的链接声明有关的错误_D3DXCreateFontA,您的项目设置可能只是一个问题。