Получение возможностей драйвера
[Функция, связанная с этой страницей, Джойстики, является устаревшей функцией. Он был заменен пространством имен 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;