Поделиться через


Получение возможностей драйвера

[Функция, связанная с этой страницей, Джойстики, является устаревшей функцией. Он был заменен пространство имен Windows.Gaming.Input. пространство имен Windows.Gaming.Input оптимизировано для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать новый код пространства имен Windows.Gaming.Input вместо джойстиков, когда это возможно. Корпорация Майкрософт предлагает, что существующий код, использующий устаревшие API, будет перезаписан для использования новых API, если это возможно.]

В следующем примере используется joyGetNumDevs и joyGetPos, чтобы определить, доступны ли службы джойстика и если джойстик подключен к одному из портов.

JOYINFO joyinfo; 
UINT wNumDevs, wDeviceID; 
BOOL bDev1Attached, bDev2Attached; 
 
    if((wNumDevs = joyGetNumDevs()) == 0) 
        return ERR_NODRIVER; 
    bDev1Attached = joyGetPos(JOYSTICKID1,&joyinfo) != JOYERR_UNPLUGGED; 
    bDev2Attached = wNumDevs == 2 && joyGetPos(JOYSTICKID2,&joyinfo) != 
        JOYERR_UNPLUGGED; 
    if(bDev1Attached || bDev2Attached)   // decide which joystick to use 
        wDeviceID = bDev1Attached ? JOYSTICKID1 : JOYSTICKID2; 
    else 
        return ERR_NODEVICE;