Помогите разобраться с DirectInput!
#include <dinput.h>
#pragma comment (lib, "dinput.lib")
//----------------------------------
LPDIRECTINPUT DxInput;
LPDIRECTINPUTDEVICE DxKeyboard;
HWND h_Wnd;
DirectInputCreate(GetModuleHandle(NULL), DIRECTINPUT_VERSION, &DxInput, NULL);
DxInput->CreateDevice(GUID_SysKeyboard, &DxKeyboard, NULL);
//****
DxKeyboard->SetDataFormat(&c_dfDIKeyboard);
//****
DxKeyboard->SetCooperativeLevel(h_Wnd, DISCL_FOREGROUND | DISCL_NONEXCLUSIVE);
DxKeyboard->Acquire();
Почему при компиляции проекта выпадает такая ошибка?
[Linker Error] Unresolved external '_c_dfDIKeyboard' referenced from FILENAME.OBJ
И вообще, есть ли у кого работающий пример DirectInput на С++ Buildere?
Цитата:
Originally posted by DarkMax
Имеется следующий код в С++ Builder 6:
#include <dinput.h>
#pragma comment (lib, "dinput.lib")
//----------------------------------
LPDIRECTINPUT DxInput;
LPDIRECTINPUTDEVICE DxKeyboard;
HWND h_Wnd;
DirectInputCreate(GetModuleHandle(NULL), DIRECTINPUT_VERSION, &DxInput, NULL);
DxInput->CreateDevice(GUID_SysKeyboard, &DxKeyboard, NULL);
//****
DxKeyboard->SetDataFormat(&c_dfDIKeyboard);
//****
DxKeyboard->SetCooperativeLevel(h_Wnd, DISCL_FOREGROUND | DISCL_NONEXCLUSIVE);
DxKeyboard->Acquire();
Почему при компиляции проекта выпадает такая ошибка?
[Linker Error] Unresolved external '_c_dfDIKeyboard' referenced from FILENAME.OBJ
И вообще, есть ли у кого работающий пример DirectInput на С++ Buildere?
Имеется следующий код в С++ Builder 6:
#include <dinput.h>
#pragma comment (lib, "dinput.lib")
//----------------------------------
LPDIRECTINPUT DxInput;
LPDIRECTINPUTDEVICE DxKeyboard;
HWND h_Wnd;
DirectInputCreate(GetModuleHandle(NULL), DIRECTINPUT_VERSION, &DxInput, NULL);
DxInput->CreateDevice(GUID_SysKeyboard, &DxKeyboard, NULL);
//****
DxKeyboard->SetDataFormat(&c_dfDIKeyboard);
//****
DxKeyboard->SetCooperativeLevel(h_Wnd, DISCL_FOREGROUND | DISCL_NONEXCLUSIVE);
DxKeyboard->Acquire();
Почему при компиляции проекта выпадает такая ошибка?
[Linker Error] Unresolved external '_c_dfDIKeyboard' referenced from FILENAME.OBJ
И вообще, есть ли у кого работающий пример DirectInput на С++ Buildere?
Всё просто.
Описание _c_dfDIKeyboard находится в C_DINPUT.CPP.
Надо его подключить к проекту.
Не знаю, найдете ли вы его где нибудь, т.к. я его нашел с большим трудом.
Если надо - вышлю.
Надо подключить библиотеку dxextra.lib, она прилогается к билдеру.
Цитата:
Originally posted by Yak40
Надо подключить библиотеку dxextra.lib, она прилогается к билдеру.
Надо подключить библиотеку dxextra.lib, она прилогается к билдеру.
Да уж, действительно.
А я в свое время замахался искать C_DINPUT.CPP, удивляясь, почему данной реализации нет в пакете билдера. :)
Цитата:
Originally posted by Slon
Да уж, действительно.
А я в свое время замахался искать C_DINPUT.CPP, удивляясь, почему данной реализации нет в пакете билдера. :)
Да уж, действительно.
А я в свое время замахался искать C_DINPUT.CPP, удивляясь, почему данной реализации нет в пакете билдера. :)
Большое спасибо. Библиотеку нашел. Помогло. Нашел, кстати на сайте http://slydiman.narod.ru/