Partager via


fonction midiInPrepareHeader (mmeapi.h)

La fonction midiInPrepareHeader prépare une mémoire tampon pour l’entrée MIDI.

Syntaxe

MMRESULT midiInPrepareHeader(
  HMIDIIN   hmi,
  LPMIDIHDR pmh,
  UINT      cbmh
);

Paramètres

hmi

Gérez le périphérique d’entrée MIDI. Pour obtenir le handle de l’appareil, appelez midiInOpen.

pmh

Pointeur vers une structure MIDIHDR qui identifie la mémoire tampon à préparer.

Avant d’appeler la fonction, définissez les membres lpData, dwBufferLength et dwFlags de la structure MIDIHDR . Le membre dwFlags doit être défini sur zéro.

cbmh

Taille, en octets, de la structure MIDIHDR .

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_INVALHANDLE
Le handle d’appareil spécifié n’est pas valide.
MMSYSERR_INVALPARAM
L’adresse spécifiée n’est pas valide.
MMSYSERR_NOMEM
Le système ne peut pas allouer ou verrouiller la mémoire.

Notes

Avant de passer un bloc de données MIDI à un pilote de périphérique, vous devez préparer la mémoire tampon en la transmettant à la fonction midiInPrepareHeader . Une fois l’en-tête préparé, ne modifiez pas la mémoire tampon. Une fois le pilote terminé à l’aide de la mémoire tampon, appelez la fonction midiInUnprepareHeader .

L’application peut réutiliser la même mémoire tampon ou allouer plusieurs tampons et appeler midiInPrepareHeader pour chaque mémoire tampon. Si vous réutilisent la même mémoire tampon, il n’est pas nécessaire de préparer la mémoire tampon à chaque fois. Vous pouvez appeler midiInPrepareHeader une fois au début, puis appeler midiInUnprepareHeader une fois à la fin.

La préparation d’un en-tête déjà préparé n’a aucun effet et la fonction retourne zéro.

Configuration requise

   
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

Allocation et préparation des blocs de données MIDI

Fonctions MIDI

midiInUnprepareHeader