Funzione midiStreamOpen (mmeapi.h)
La funzione midiStreamOpen apre un flusso MIDI per l'output. Per impostazione predefinita, il dispositivo viene aperto in modalità sospesa. L'handle di flusso recuperato da questa funzione deve essere usato in tutti i riferimenti successivi al flusso.
Sintassi
MMRESULT midiStreamOpen(
LPHMIDISTRM phms,
LPUINT puDeviceID,
DWORD cMidi,
DWORD_PTR dwCallback,
DWORD_PTR dwInstance,
DWORD fdwOpen
);
Parametri
phms
Puntatore a una variabile per contenere l'handle di flusso quando la funzione restituisce.
puDeviceID
Puntatore a un identificatore di dispositivo. Il dispositivo viene aperto per conto del flusso e chiuso di nuovo quando il flusso viene chiuso.
cMidi
Riservati; deve essere 1.
dwCallback
Puntatore a una funzione di callback, un handle di evento, un identificatore di thread o un handle di una finestra o di un thread chiamato durante la riproduzione MIDI per elaborare i messaggi correlati allo stato di avanzamento della riproduzione. Se non si desidera alcun meccanismo di callback, specificare NULL per questo parametro.
dwInstance
Dati di istanza specifici dell'applicazione restituiti all'applicazione con ogni funzione di callback.
fdwOpen
Flag di callback per l'apertura del dispositivo. È necessario specificare uno dei flag di callback seguenti.
Valore | Significato |
---|---|
CALLBACK_EVENT | Il parametro dwCallback è un handle di evento. Questo meccanismo di callback è solo per l'output. |
CALLBACK_FUNCTION | Il parametro dwCallback è un indirizzo di routine di callback. Per la firma di callback, vedi MidiOutProc. |
CALLBACK_NULL | Non esiste alcun meccanismo di callback. Si tratta dell'impostazione predefinita. |
CALLBACK_THREAD | Il parametro dwCallback è un identificatore di thread. |
CALLBACK_WINDOW | Il parametro dwCallback è un handle di finestra. |
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'identificatore del dispositivo specificato non è compreso nell'intervallo. |
|
Il parametro handle o flag specificato non è valido. |
|
Il sistema non è in grado di allocare o bloccare la memoria. |
Requisiti
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 |