J'essaie d'utiliser un contrôleur ps3 pour un jeu que je crée. J'ai téléchargé l'extension sharpDX.DirectInput dans ma solution XNA de studio visuel, et j'ai utilisé le code apparemment simple de la réponse de Valdemar au Taking input from a joystick with C# .NET. J'ai déjà réduit le problème au fait qu'il ne peut pas trouver le guid du contrôleur, ni le guid d'autres périphériques connectés par USB, comme un clavier. Cela fonctionne cependant pour le clavier intégré de mon ordinateur portable. Voici mon code:ne trouve pas de joystick guid en utilisant sharpDX directinput
directInput = new DirectInput();
// Find a Joystick Guid
foreach (var deviceInstance in directInput.GetDevices(DeviceType.Gamepad, DeviceEnumerationFlags.AllDevices))
guid = deviceInstance.InstanceGuid;
//create joystick
if (guid!=Guid.Empty)
controller = new Joystick(directInput, guid);
Le problème est que le contrôleur reste nulle, ce qui signifie que le guid reste vide, ce qui signifie que la méthode GetDevices ne trouve pas un gamepad. Ce qui est étrange parce que le contrôleur fonctionne parfaitement dans Windows 7 et visible dans le gestionnaire de périphériques comme HID et comme contrôleur commun Microsoft pour la classe Windows. Par la suite, j'ai eu le même problème en utilisant Microsoft.DirectX.directInput.
Merci pour la lecture :)