Программирование джойстика в DirectInput

Я пишу приложение для программы Joystick, используя DirectInput и MFC. Я нашел скрипт, как это сделать, но у меня проблема. Когда я хочу перечислить устройства, чтобы найти джойстик, я использую правильную функцию "EnumDevices" с аргументом "enumCallback", которая тоже является функцией. Теперь я не так называю функцию, но обычно она работает. Я не знаю, что не так. Спасибо за помощь!

void Joystick::Załaduj_Pada()
{
    Czy_Jest_Pad = true;
    // Create a DirectInput device
     DirectInput8Create(GetModuleHandle(NULL), DIRECTINPUT_VERSION, IID_IDirectInput8, (VOID**)&di, NULL); 


     di->EnumDevices(DI8DEVCLASS_GAMECTRL,enumCallback,NULL,DIEDFL_ATTACHEDONLY);

    // Make sure we got a joystick
    if (joystick == NULL) 
    {Czy_Jest_Pad=false;}

}

ошибка C3867: 'Joystick::enumCallback': отсутствует вызов аргумента при вызове функции; используйте '&Joystick::enumCallback', чтобы создать указатель на член

1 ответ

Решение

Пытаться

di->EnumDevices(DI8DEVCLASS_GAMECTRL,&enumCallback,NULL,DIEDFL_ATTACHEDONLY

поместите '&' перед enumCallback.

Другие вопросы по тегам