Función midiOutOpen (mmeapi.h)
La función midiOutOpen abre un dispositivo de salida MIDI para la reproducción.
Sintaxis
MMRESULT midiOutOpen(
LPHMIDIOUT phmo,
UINT uDeviceID,
DWORD_PTR dwCallback,
DWORD_PTR dwInstance,
DWORD fdwOpen
);
Parámetros
phmo
Puntero a un identificador HMIDIOUT . Esta ubicación se rellena con un identificador que identifica el dispositivo de salida MIDI abierto. El identificador se usa para identificar el dispositivo en llamadas a otras funciones de salida MIDI.
uDeviceID
Identificador del dispositivo de salida MIDI que se va a abrir.
dwCallback
Puntero a una función de devolución de llamada, un controlador de eventos, un identificador de subproceso o un identificador de una ventana o subproceso llamado durante la reproducción MIDI para procesar mensajes relacionados con el progreso de la reproducción. Si no se desea ninguna devolución de llamada, especifique NULL para este parámetro. Para obtener más información sobre la función de devolución de llamada, vea MidiOutProc.
dwInstance
Datos de instancia de usuario pasados a la devolución de llamada. Este parámetro no se usa con devoluciones de llamada de ventana o subprocesos.
fdwOpen
Marca de devolución de llamada para abrir el dispositivo. Puede ser los siguientes valores.
Valor | Significado |
---|---|
CALLBACK_EVENT | El parámetro dwCallback es un identificador de eventos. Este mecanismo de devolución de llamada es solo para la salida. |
CALLBACK_FUNCTION | El parámetro dwCallback es una dirección de función de devolución de llamada. |
CALLBACK_NULL | No hay ningún mecanismo de devolución de llamada. Este valor es la configuración predeterminada. |
CALLBACK_THREAD | El parámetro dwCallback es un identificador de subproceso. |
CALLBACK_WINDOW | El parámetro dwCallback es un identificador de ventana. |
Valor devuelto
Devuelve MMSYSERR_NOERROR si se ejecuta correctamente o si se produce un error. Entre los posibles valores de error se incluyen los siguientes.
Código devuelto | Descripción |
---|---|
|
No se encontró ningún puerto MIDI. Este error solo se produce cuando se abre el asignador. |
|
El recurso especificado ya está asignado. |
|
El identificador de dispositivo especificado está fuera del intervalo. |
|
El puntero o la estructura especificados no son válidos. |
|
El sistema no puede asignar o bloquear la memoria. |
Comentarios
Para determinar el número de dispositivos de salida MIDI presentes en el sistema, use la función midiOutGetNumDevs . El identificador de dispositivo especificado por wDeviceID varía de cero a uno menor que el número de dispositivos presentes. MIDI_MAPPER también se puede usar como identificador del dispositivo.
Si se elige una ventana o un subproceso para recibir información de devolución de llamada, los siguientes mensajes se envían al procedimiento o subproceso de la ventana para indicar el progreso de la salida MIDI: MM_MOM_OPEN, MM_MOM_CLOSE y MM_MOM_DONE.
Si se elige una función para recibir información de devolución de llamada, los siguientes mensajes se envían a la función para indicar el progreso de la salida MIDI: MOM_OPEN, MOM_CLOSE y MOM_DONE.
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | mmeapi.h (incluye Windows.h) |
Library | Winmm.lib |
Archivo DLL | Winmm.dll |