ドライバー機能の取得
[このページに関連付けられている機能である ジョイスティックは、従来の機能です。 Windows.Gaming.Input 名前空間に置き換わりました。 Windows.Gaming.Input 名前空間は、Windows 10とWindows 11用に最適化されています。 Microsoft では、可能であれば、新しいコードでジョイスティックではなく Windows.Gaming.Input 名前空間を使用することを強くお勧めします。 Microsoft は、レガシ 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;