fonction midiInOpen (mmeapi.h)

La fonction midiInOpen ouvre un périphérique d’entrée MIDI spécifié.

Syntaxe

MMRESULT midiInOpen(
  LPHMIDIIN phmi,
  UINT      uDeviceID,
  DWORD_PTR dwCallback,
  DWORD_PTR dwInstance,
  DWORD     fdwOpen
);

Paramètres

phmi

Pointeur vers un handle HMIDIIN . Cet emplacement est rempli avec un handle identifiant le périphérique d’entrée MIDI ouvert. Le handle est utilisé pour identifier l’appareil dans les appels à d’autres fonctions d’entrée MIDI.

uDeviceID

Identificateur du périphérique d’entrée MIDI à ouvrir.

dwCallback

Pointeur vers une fonction de rappel, un identificateur de thread ou un handle d’une fenêtre appelée avec des informations sur les messages MIDI entrants. Pour plus d’informations sur la fonction de rappel, consultez MidiInProc.

dwInstance

L’utilisateur instance données transmises à la fonction de rappel. Ce paramètre n’est pas utilisé avec les fonctions ou threads de rappel de fenêtre.

fdwOpen

Indicateur de rappel pour l’ouverture de l’appareil et, éventuellement, indicateur de status qui permet de réguler les transferts de données rapides. Il peut s’agir des valeurs suivantes.

Valeur Signification
CALLBACK_FUNCTION Le paramètre dwCallback est une adresse de procédure de rappel.
CALLBACK_NULL Il n’existe aucun mécanisme de rappel. Cette valeur est le paramètre par défaut.
CALLBACK_THREAD Le paramètre dwCallback est un identificateur de thread.
CALLBACK_WINDOW Le paramètre dwCallback est un handle de fenêtre.
MIDI_IO_STATUS Lorsque ce paramètre spécifie également CALLBACK_FUNCTION, MIM_MOREDATA messages sont envoyés à la fonction de rappel ainsi que les messages MIM_DATA . Ou, si ce paramètre spécifie également CALLBACK_WINDOW, MM_MIM_MOREDATA messages sont envoyés à la fenêtre ainsi que MM_MIM_DATA messages. Cet indicateur n’affecte pas les rappels d’événements ou de threads.
 

La plupart des applications qui utilisent un mécanisme de rappel spécifient CALLBACK_FUNCTION pour ce paramètre.

Valeur retournée

Retourne MMSYSERR_NOERROR en cas de réussite ou une erreur dans le cas contraire. Les valeurs d’erreur possibles sont les suivantes/

Code de retour Description
MMSYSERR_ALLOCATED
La ressource spécifiée est déjà allouée.
MMSYSERR_BADDEVICEID
L’identificateur d’appareil spécifié est hors de portée.
MMSYSERR_INVALFLAG
Les indicateurs spécifiés par dwFlags ne sont pas valides.
MMSYSERR_INVALPARAM
Le pointeur ou la structure spécifiés n’est pas valide.
MMSYSERR_NOMEM
Le système ne peut pas allouer ou verrouiller la mémoire.

Remarques

Pour déterminer le nombre d’appareils d’entrée MIDI présents dans le système, utilisez la fonction midiInGetNumDevs . L’identificateur d’appareil spécifié par wDeviceID varie de zéro à un inférieur au nombre d’appareils présents.

Si une fenêtre ou un thread est choisi pour recevoir des informations de rappel, les messages suivants sont envoyés à la procédure de fenêtre ou au thread pour indiquer la progression de l’entrée MIDI : MM_MIM_OPEN, MM_MIM_CLOSE, MM_MIM_DATA, MM_MIM_LONGDATA, MM_MIM_ERROR, MM_MIM_LONGERROR et MM_MIM_MOREDATA.

Si une fonction est choisie pour recevoir des informations de rappel, les messages suivants sont envoyés à la fonction pour indiquer la progression de l’entrée MIDI : MIM_OPEN, MIM_CLOSE, MIM_DATA, MIM_LONGDATA, MIM_ERROR, MIM_LONGERROR et MIM_MOREDATA.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête mmeapi.h (inclure Windows.h)
Bibliothèque Winmm.lib
DLL Winmm.dll

Voir aussi

Fonctions MIDI