Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.25;
Скачать: CL | DM;

Вниз

Проблемы с DirectInput + VS 6.0 и собственными модулями(ООП)   Найти похожие ветки 

 
Мелкий ©   (2005-07-22 09:00) [0]

Заранее дико извиняюсь за перенаправление, но в противном случае очень много писать бы пришлось, а там уже всё написано!
 
<url>http://forums.realcoding.net/index.php?s=bd94b16e1b8dcfe6c13984865977066a&showtopic=9359</url>
 Заранее признателен за понимание!


 
XProger ©   (2005-07-22 10:30) [1]

Вы название данного форума читали? Поясняю: "Мастера Delphi"!
У тебя проблема не с DInput, а со знанием C++ скорее всего.

P.S.
Пройдись Debug"ером по коду.
P.P.S.
А DInput реально нужен? ;)


 
Мелкий ©   (2005-07-22 10:45) [2]


> Вы название данного форума читали? Поясняю: "Мастера Delphi"!

Читал, но даже в форме указан Builder и окошко "прочее".

> P.P.S.
> А DInput реально нужен? ;)

О да! Очень реально 8-)! (А как без него то)?


 
XProger ©   (2005-07-22 11:05) [3]

> (А как без него то)?
А вот так:

var
Key : array [0..255] of boolean;
...
WM_KEYDOWN : Key[wParam] := true;
WM_KEYUP   : Key[wParam] := false;
...
if Key[VK_RETURN] then Move;


 
Мелкий ©   (2005-07-22 11:21) [4]


> XProger ©   (22.07.05 11:05) [3]

Ну, конечно, такой путь имеет право на существование, но я предпочитаю DirectInput.

Я чуть-чуть подумал и понял как debug-ить проекты на MS VS6.0. После этого открытия я обнаружил следующую ошибку в моей программе: в модуле Core_Input.cpp в функции

BOOL cInput::Init(HWND hWnd, HINSTANCE hInst)

На строчках

// Create a DirectInput interface
hr = DirectInput8Create(hInst, DIRECTINPUT_VERSION, IID_IDirectInput8, (void**)&m_pDI, NULL);
if(FAILED(hr))
 return FALSE;

значение hr равно 0x80070057, на что ErrorLookUp отвечает: «Параметр задан неверно.»!
Опять неверный параметр! Уже ведь была эта ошибка! Значит проблема именно в этом! Попробуйте, пожалуйста пример на своих машинах (можно найти в форуме по ссылке в посте выше)! У меня ведь раньше работало всё до тех пор, пока я не использовал Core_System.cpp. Почему так происходит при попытке структурировать проект (разбить на функциональные модули)?
Спасайте меня, пожалуйста!


 
XProger ©   (2005-07-22 12:44) [5]

Писал как-то под DX 6 :)

var
DInput : IDirectInput;
...
procedure Init;
begin
input_initialized := DirectInputCreate(hinstance,
                       DIRECTINPUT_VERSION,
                       DInput,
                       nil) = DI_OK;
...

И всё работало вроде...

P.S.
В чём причина данного предпочтения?


 
Мелкий ©   (2005-07-22 22:01) [6]


> XProger ©   (22.07.05 12:44) [5]
> Писал как-то под DX 6 :)
>
> var
> DInput : IDirectInput;
> ...
> procedure Init;
> begin
> input_initialized := DirectInputCreate(hinstance,
>                        DIRECTINPUT_VERSION,
>                        DInput,
>                        nil) = DI_OK;
> ...
>
> И всё работало вроде...


Я впринципе тоже самое делаю. Но всё равно, спасибо большое за помощь!


> P.S.
> В чём причина данного предпочтения?


Имеется в виду DirectInput? Да скорость обработки повыше и универсальнее. Конечно это субъективное мнение но в моём выборе я далеко не одинок :>!


 
ViK ©   (2005-07-23 19:37) [7]


> Мелкий

DirectInput я не использовал, но думаю что насчет скорости ты ошибаешься. Мне кажется, что реально его можно использовать только ради джостика.


 
Мелкий ©   (2005-07-26 11:56) [8]


> ViK ©   (23.07.05 19:37) [7]


Ну, спорить не буду, возможно оно действительно так, однако от своего мнения я тоже не отказываюсь!



Страницы: 1 вся ветка

Текущий архив: 2005.12.25;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.039 c
2-1133955929
Вт
2005-12-07 14:45
2005.12.25
виртуальный диск


2-1134121057
De
2005-12-09 12:37
2005.12.25
Почему Incompatible types: Integer and Pointer ?


1-1133366543
legeyda
2005-11-30 19:02
2005.12.25
Ошибка dib.dcu в делфи


1-1132744195
GuAV
2005-11-23 14:09
2005.12.25
Рассылка событий группе объектов.


2-1134011223
HF-Trade
2005-12-08 06:07
2005.12.25
Сортировка по алфавиту Popupmenu