DirectInput für mehrere Joysticks nutzen



  • Hallo im Forum,

    ich will mehrere Joysticks an einem Rechner nutzen und diese der Reihe nach abfragen. Es gelingt mir jedoch immer nur einen anzusprechen. Kann mir jemand weiter helfen wie ich die einzelnen Joysticks durchnummeriere? Bin softwaretechnisch nicht die Leuchte und wäre über den Quellcode sehr glücklich.

    Vielen Dank
    TOGA :xmas1:



  • HRESULT IDirectInput8::EnumDevices(DWORD dwDevType, LPDIENUMDEVICESCALLBACK lpCallback, LPVOID pvRef, DWORD dwFlags) einmalig aufrufen, und als lpCallback Deine selbstgebaute BOOL CALLBACK DIEnumDevicesCallback(LPCDIDEVICEINSTANCE lpddi, LPVOID pvRef)-Funktion übergeben.
    DirectInput ruft dann für jeden Joystick den es findet diese Funktion auf. Die Funktion könnte z.B. Pointer auf lpddi in ein Array speichern, und solange DIENUM_CONTINUE (für: WEITERMACHEN!) an DirectInput zurückliefern, bis das Array voll ist.
    Danach kannst Du hinter EnumDevices() weitermachen und die Werte verwenden.
    Ist aber auch ein Tutorial im DXSDK.


Anmelden zum Antworten