Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите с DirectInput! [D7, WinXP]


andreil ©   (2007-09-22 10:03:00) 

В своей игре дошел до управления и решил делать его не на ВинАпи, а на ДХ. Но при инициализации клавиатуры:

 DirectInputCreate(hMainWnd, DIRECTINPUT_VERSION, Keyboard, nil);
 Keyboard.CreateDevice(GUID_SysKeyboard, Keyb, nil);
 Keyb.SetDataFormat(c_dfDIKeyboard);
 Keyb.SetCooperativeLevel(hMainWnd, DISCL_FOREGROUND xor DISCL_NONEXCLUSIVE);
 Keyb.Acquire;

у меня при выполнении второй и третьей строк выскакивает "Acces violation....", потому что если эту процедуру, кроме первой строки, закоментить, ошибок нету.
Типы данных:

Keyboard: IDirectInputA;
 Keyb: IDirectInputDeviceA;
 Keys: array[0..255] of byte;


DevilDevil   (2007-09-22 16:50:00) [1]

могу посоветовать собстенный модуль годичной давности, там есть несколько нужных вещей:
http://dronprogs.mirgames.ru/files/d_input.rar

в OnIdle или где там у тебя :) нужно вызывать ReadInputData();


Наверх

Титульная страница Поиск, карта сайта Написать письмо