Я пытаюсь использовать DirectInput для управления перемещением камеры на маленьком 3D-приложении для школьного проекта. Я использую C++ на VS2010.Ошибки связи DirectInput 8
Per this link, мне нужно, чтобы связать dxguid.lib и dinput8.lib на моих свойствах проекта. Итак, я добавил их.
Это привело к тому, что VS2010 не смог прочитать dxguid.lib. Поэтому мне пришлось загрузить и установить DirectX SDK с Microsoft's download page. Это привело к ошибке S1023, которая была решена с помощью Microsoft's solution.
Я продолжал получать другие ошибки компиляции, и некоторые поиски привели меня к this site. И после того, как делать, что я теперь только получить 2 неразрешенных внешние:
error LNK2001: unresolved external symbol _IID_IDirectInput8W
error LNK2019: unresolved external symbol [email protected]
Это соответствующий код, который был взят из первого звена, с незначительными изменениями:
bool GamePad::InitDirectInput(void)
{
if(FAILED(DirectInput8Create(GetModuleHandle(NULL),
DIRECTINPUT_VERSION,
IID_IDirectInput8,
(void**)&m_pDIObject,
NULL)))
{
MessageBox(NULL,
L"DirectInput8Create() failed!",
L"InitDirectInput()",
MB_OK);
return false;
}
return true;
}
И каждый поиск я возвращаюсь к тем же решениям, которые указаны выше, или аналогичным. Я не могу найти то, чего я не сделал. Может ли кто-нибудь представить идею? Может ли проблема заключаться в том, что я использую Windows 8? Заранее спасибо.
UPDATE
мне удалось решить с помощью первого
#include <InitGuid.h>
Но второй сохраняется, к моему разочарованию ...
wow ... Я, очевидно, опечатал каталоги. Большое спасибо, сэр – rubbyrubber