Función midiInOpen (mmeapi.h)

La función midiInOpen abre un dispositivo de entrada MIDI especificado.

Sintaxis

MMRESULT midiInOpen(
  LPHMIDIIN phmi,
  UINT      uDeviceID,
  DWORD_PTR dwCallback,
  DWORD_PTR dwInstance,
  DWORD     fdwOpen
);

Parámetros

phmi

Puntero a un identificador HMIDIIN . Esta ubicación se rellena con un identificador que identifica el dispositivo de entrada MIDI abierto. El identificador se usa para identificar el dispositivo en llamadas a otras funciones de entrada MIDI.

uDeviceID

Identificador del dispositivo de entrada MIDI que se va a abrir.

dwCallback

Puntero a una función de devolución de llamada, un identificador de subproceso o un identificador de una ventana denominada con información sobre los mensajes MIDI entrantes. Para obtener más información sobre la función de devolución de llamada, vea MidiInProc.

dwInstance

Datos de instancia de usuario pasados a la función de devolución de llamada. Este parámetro no se usa con funciones o subprocesos de devolución de llamada de ventana.

fdwOpen

Marca de devolución de llamada para abrir el dispositivo y, opcionalmente, una marca de estado que ayuda a regular las transferencias rápidas de datos. Puede ser los siguientes valores.

Valor Significado
CALLBACK_FUNCTION El parámetro dwCallback es una dirección de procedimiento 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.
MIDI_IO_STATUS Cuando este parámetro también especifica CALLBACK_FUNCTION, MIM_MOREDATA mensajes se envían a la función de devolución de llamada, así como MIM_DATA mensajes. O bien, si este parámetro también especifica CALLBACK_WINDOW, MM_MIM_MOREDATA mensajes se envían a la ventana, así como MM_MIM_DATA mensajes. Esta marca no afecta a las devoluciones de llamada de eventos o subprocesos.
 

La mayoría de las aplicaciones que usan un mecanismo de devolución de llamada especificarán CALLBACK_FUNCTION para este parámetro.

Valor devuelto

Devuelve MMSYSERR_NOERROR si se realiza correctamente o si se produce un error en caso contrario. Entre los valores de error posibles se incluyen los siguientes:

Código devuelto Descripción
MMSYSERR_ALLOCATED
El recurso especificado ya está asignado.
MMSYSERR_BADDEVICEID
El identificador de dispositivo especificado está fuera del intervalo.
MMSYSERR_INVALFLAG
Las marcas especificadas por dwFlags no son válidas.
MMSYSERR_INVALPARAM
El puntero o la estructura especificados no son válidos.
MMSYSERR_NOMEM
El sistema no puede asignar o bloquear la memoria.

Comentarios

Para determinar el número de dispositivos de entrada MIDI presentes en el sistema, use la función midiInGetNumDevs . El identificador de dispositivo especificado por wDeviceID varía de cero a uno menor que el número de dispositivos presentes.

Si se elige una ventana o un subproceso para recibir información de devolución de llamada, los mensajes siguientes se envían al procedimiento de ventana o al subproceso para indicar el progreso de la entrada MIDI: MM_MIM_OPEN, MM_MIM_CLOSE, MM_MIM_DATA, MM_MIM_LONGDATA, MM_MIM_ERROR, MM_MIM_LONGERROR y MM_MIM_MOREDATA.

Si se elige una función para recibir información de devolución de llamada, se envían los siguientes mensajes a la función para indicar el progreso de la entrada MIDI: MIM_OPEN, MIM_CLOSE, MIM_DATA, MIM_LONGDATA, MIM_ERROR, MIM_LONGERROR y MIM_MOREDATA.

Requisitos

Requisito Value
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 (incluya Windows.h)
Library Winmm.lib
Archivo DLL Winmm.dll

Consulte también

Funciones MIDI