Какая версия Windows SDK использует xinput1_3.dll?
В настоящее время у меня установлен Windows SDK 7.0A. Эта версия SDK содержит Xinput.h
какие ссылки xinput9_1_0.dll
:
#define XINPUT_DLL_A "xinput9_1_0.dll"
Мне нужна моя программа для использования xinput1_3.dll
вместо. Я подумал, что для того, чтобы сделать это, я должен связать с xinput.lib
файл из более ранней версии Windows SDK.
Но какая версия SDK содержит Xinput.h
файл, который ссылается xinput1_3.dll
?
2 ответа
Я думаю, что на самом деле решение заключается в том, чтобы использовать Microsoft DirectX SDK (июнь 2010 г.), изменив директории include и library для вашего проекта. XInput.h
файл из DirectX SDK...
// 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
,
Дата изменения XInput9_1_0.dll
читает 2009-07-14, поэтому я постараюсь использовать последнюю версию до этого выпуска, а именно: v6.1 (Windows Server 2008 и.NET 3.5 SDK) от 2008-02-05