Acces port jeu pour midi sous XP

phil4002 Messages postés 3 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 1 décembre 2004 - 23 nov. 2004 à 19:45
phil4002 Messages postés 3 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 1 décembre 2004 - 1 déc. 2004 à 17:39
Bonjour,

je souhaite lire les infos midi envoyées par un piano yamaha à mon pc via le port jeu sous XP.
Apparemment, XP n'autorise pas les lectures de port via les fonctions du genre inportb ou inb. Il faut utiliser les fonctions createfile() et readfile(). J'ai trouvé des exemples d'utilisation de ces fonctions pour des ports séries (COM) ou parallèles (LPT) :

hComm=CreateFile("COM1",
GENERIC_READ | GENERIC_WRITE,
0,
0,
OPEN_EXISTING,
FILE_FLAG_OVERLAPPED,
0);

Mais rien pour le port jeu... Existe-il un mot clé correspondant à ce port (j'ai essayé "GAMEPORT" ou "JOYSTICK", mais sans succès) ? Où le lien entre la dénomination du fichier ("COM1") et l'adresse du port est-il fait ?

Merci pour votre aide
Phil

4 réponses

jul39dole Messages postés 117 Date d'inscription mardi 22 juillet 2003 Statut Membre Dernière intervention 21 janvier 2011
23 nov. 2004 à 21:58
N'est-il pas plus simple d'utiliser les fonctions midi de windows plutôt que de vouloir accéder directement au port jeu ?
0
phil4002 Messages postés 3 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 1 décembre 2004
24 nov. 2004 à 21:12
Effectivement, si je peux éviter de réinventer la roue ...
En fait je débute en c++ et ne connais pas du tout les fonctions windows.
Les fonctions dont tu me parles me permettront de communiquer directement avec mon piano ? Comment s'appellent-elles ?
Merci
0
jul39dole Messages postés 117 Date d'inscription mardi 22 juillet 2003 Statut Membre Dernière intervention 21 janvier 2011
25 nov. 2004 à 00:20
Toutes les fonctions midi s'appelle midiIn... ou midiOut... (va voir dans la msdn de microsoft ici.
Elles permettent toutes sortes de trucs, comme recevoir depuis ton clavier les évènements midi (noteOn, noteOff, VolumeChange, PatchChange...) ou d'envoyer ces mêmes évènements à la sortie Midi.
Pour les utiliser, il faut ajouter winmm.lib dans l'éditeur de lien.
Voilà, bonne prog !
0
phil4002 Messages postés 3 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 1 décembre 2004
1 déc. 2004 à 17:39
Super, ca a marché.
Je suis allé sur le site http://www.borg.com/~jglatt/tech/lowmidi.htm
qui illustre le fonctionnement de ces fonctions.

Merci beaucoup pour ton aide
Phil
0
Rejoignez-nous