Ich hab folgende Methode gebastelt umDirectInput mit der SysMouse und dem SysKeyboard zu initalisieren:
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
bool 3DE_CInput::Init()
{
//DirectInput8 Objekt erstellen
if(FAILED(DirectInput8Create( GetModuleHandle(NULL),DIRECTINPUT_VERSION, IID_IDirectInput8,
(void**)&3DE_CInput::m_lpDI, NULL)))
return FALSE;
//TastaturDevice
if(FAILED(m_lpDI->CreateDevice(GUID_SysKeyboard, &3DE_CInput::m_lpDIKeyboard, NULL)))
return FALSE;
//Datenformat
if(FAILED(3DE_CInput::m_lpDIKeyboard->SetDataFormat(&c_dfDIKeyboard)))
return FALSE;
//Zugriff
if(FAILED(3DE_CInput::m_lpDIKeyboard->SetCooperativeLevel(3DE_g_hWnd,
DISCL_NONEXCLUSIVE|DISCL_FOREGROUND)))
return FALSE;
//Tastaturzugriff aktivieren
if(FAILED(3DE_CInput::m_lpDIKeyboard->Acquire()))
return FALSE;
//MausDevice
if(FAILED(3DE_CInput::m_lpDI->CreateDevice(GUID_SysMouse, &3DE_CInput::m_lpDIMouse, NULL)))
return FALSE;
//Zugriff
if(FAILED(3DE_CInput::m_lpDIMouse->SetCooperativeLevel(3DE_g_hWnd, DISCL_EXCLUSIVE | DISCL_FOREGROUND)))
return FALSE;
// Datenformat
if(FAILED(3DE_CInput::m_lpDIMouse->SetDataFormat(&c_dfDIMouse2)))
return FALSE;
//Mauszugriff aktivieren
if(FAILED(3DE_CInput::m_lpDIMouse->Acquire()))
return FALSE;
return TRUE;
};
|
So, das Problem ist, das Keyboard funzt,
die Mouse nicht!
Folgende Methode gibt FALSE zurück:
|
Quellcode
|
1
2
3
|
//MausDevice
if(FAILED(3DE_CInput::m_lpDI->CreateDevice(GUID_SysMouse, &3DE_CInput::m_lpDIMouse, NULL)))
return FALSE;
|
Woran könnte das denn nu liegen?
Thx, Zion