funzione midiOutOpen (mmeapi.h)
La funzione midiOutOpen apre un dispositivo di output MIDI per la riproduzione.
Sintassi
MMRESULT midiOutOpen(
LPHMIDIOUT phmo,
UINT uDeviceID,
DWORD_PTR dwCallback,
DWORD_PTR dwInstance,
DWORD fdwOpen
);
Parametri
phmo
Puntatore a un handle HMIDIOUT . Questa posizione viene riempita con un handle che identifica il dispositivo di output MIDI aperto. L'handle viene usato per identificare il dispositivo nelle chiamate ad altre funzioni di output MIDI.
uDeviceID
Identificatore del dispositivo di output MIDI da aprire.
dwCallback
Puntatore a una funzione di callback, un handle di eventi, un identificatore di thread o un handle di una finestra o di un thread denominato durante la riproduzione MIDI per elaborare i messaggi correlati allo stato di avanzamento della riproduzione. Se non è desiderato alcun callback, specificare NULL per questo parametro. Per altre informazioni sulla funzione di callback, vedere MidiOutProc.
dwInstance
Dati dell'istanza utente passati al callback. Questo parametro non viene usato con callback delle finestre o thread.
fdwOpen
Flag di callback per aprire il dispositivo. Può essere il valore seguente.
Valore | Significato |
---|---|
CALLBACK_EVENT | Il parametro dwCallback è un handle di eventi. Questo meccanismo di callback è solo per l'output. |
CALLBACK_FUNCTION | Il parametro dwCallback è un indirizzo della funzione di callback. |
CALLBACK_NULL | Non esiste alcun meccanismo di callback. Questo valore è l'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 ha esito positivo o un errore in caso contrario. I valori di errore possibili includono quanto segue.
Codice restituito | Descrizione |
---|---|
|
Nessuna porta MIDI è stata trovata. Questo errore si verifica solo quando viene aperto il mapper. |
|
La risorsa specificata è già allocata. |
|
L'identificatore del dispositivo specificato non è compreso nell'intervallo. |
|
Il puntatore o la struttura specificati non è valido. |
|
Il sistema non è in grado di allocare o bloccare la memoria. |
Commenti
Per determinare il numero di dispositivi di output MIDI presenti nel sistema, usare la funzione midiOutGetNumDevs . L'identificatore del dispositivo specificato da wDeviceID varia da zero a uno inferiore al numero di dispositivi presenti. MIDI_MAPPER può essere usato anche come identificatore del dispositivo.
Se una finestra o un thread viene scelto per ricevere informazioni di callback, i messaggi seguenti vengono inviati alla procedura o al thread della finestra per indicare lo stato di avanzamento dell'output MIDI: MM_MOM_OPEN, MM_MOM_CLOSE e MM_MOM_DONE.
Se una funzione viene scelta per ricevere informazioni di callback, i messaggi seguenti vengono inviati alla funzione per indicare lo stato di avanzamento dell'output MIDI: MOM_OPEN, MOM_CLOSE e MOM_DONE.
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 (includere Windows.h) |
Libreria | Winmm.lib |
DLL | Winmm.dll |