Funzione midiOutPrepareHeader (mmeapi.h)
La funzione midiOutPrepareHeader prepara un buffer di flusso o esclusivo dal sistema MIDI per l'output.
Sintassi
MMRESULT midiOutPrepareHeader(
HMIDIOUT hmo,
LPMIDIHDR pmh,
UINT cbmh
);
Parametri
hmo
Handle per il dispositivo di output MIDI. Per ottenere l'handle del dispositivo, chiama midiOutOpen. Questo parametro può anche essere l'handle di un flusso MIDI di cui è stato eseguito il cast a un tipo HMIDIOUT .
pmh
Puntatore a una struttura MIDIHDR che identifica il buffer da preparare.
Prima di chiamare la funzione, impostare i membri lpData, dwBufferLength e dwFlags della struttura MIDIHDR . Il membro dwFlags deve essere impostato su zero.
cbmh
Dimensioni, in byte, della struttura MIDIHDR .
Valore restituito
Restituisce MMSYSERR_NOERROR se l'esito positivo o un errore in caso contrario. I valori di errore possibili includono quanto segue.
Codice restituito | Descrizione |
---|---|
|
L'handle del dispositivo specificato non è valido. |
|
L'indirizzo specificato non è valido o il buffer di flusso specificato è maggiore di 64.000. |
|
Il sistema non è in grado di allocare o bloccare la memoria. |
Commenti
Prima di passare un blocco di dati MIDI a un driver di dispositivo, è necessario preparare il buffer passandolo alla funzione midiOutPrepareHeader . Dopo aver preparato l'intestazione, non modificare il buffer. Al termine dell'uso del buffer, chiamare la funzione midiOutUnprepareHeader .
L'applicazione può riutilizzare lo stesso buffer o allocare più buffer e chiamare midiOutPrepareHeader per ogni buffer. Se si usa nuovamente lo stesso buffer, non è necessario preparare il buffer ogni volta. È possibile chiamare midiOutPrepareHeader una volta all'inizio e quindi chiamare midiOutUnprepareHeader una volta alla fine.
Un buffer di flusso non può essere maggiore di 64.000.
La preparazione di un'intestazione già preparata non ha alcun effetto e la funzione restituisce MMSYSERR_NOERROR.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | mmeapi.h (include Windows.h) |
Libreria | Winmm.lib |
DLL | Winmm.dll |