我目前安装了Windows SDK 7.0A。此版本的SDK包含引用Xinput.h
的<{1}}:
xinput9_1_0.dll
我需要我的程序才能使用#define XINPUT_DLL_A "xinput9_1_0.dll"
。我想,为了做到这一点,我必须链接早期版本的Windows SDK中的xinput1_3.dll
文件。
但是,哪个版本的SDK包含引用xinput.lib
的{{1}}文件?
答案 0 :(得分:2)
我认为该解决方案实际上是通过修改项目的include和library dirs来使用Microsoft DirectX SDK(2010年6月)。 DirectX SDK中的XInput.h
文件...
// XInput.h from the DirectX SDK
#ifndef XINPUT_USE_9_1_0
#define XINPUT_DLL_A "xinput1_3.dll"
#define XINPUT_DLL_W L"xinput1_3.dll"
#else
#define XINPUT_DLL_A "xinput9_1_0.dll"
#define XINPUT_DLL_W L"xinput9_1_0.dll"
#endif
#ifdef UNICODE
#define XINPUT_DLL XINPUT_DLL_W
#else
#define XINPUT_DLL XINPUT_DLL_A
#endif
...实际上与Windows SDK中的那个有点不同......
// XInput.h from the Windows SDK
#define XINPUT_DLL_A "xinput9_1_0.dll"
#define XINPUT_DLL_W L"xinput9_1_0.dll"
#ifdef UNICODE
#define XINPUT_DLL XINPUT_DLL_W
#else
#define XINPUT_DLL XINPUT_DLL_A
#endif
因此,默认情况下,DirectX SDK实际上会使用xinput1_3.dll
。
答案 1 :(得分:0)
XInput9_1_0.dll
上的修改日期为2009-07-14,因此我将尝试在此版本之前使用最新版本,即v6.1(Windows Server 2008&amp; .NET 3.5 SDK) )来自2008-02-05