Compartilhar via


Função midiInOpen (mmeapi.h)

A função midiInOpen abre um dispositivo de entrada MIDI especificado.

Sintaxe

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

Parâmetros

phmi

Ponteiro para um identificador HMIDIIN . Esse local é preenchido com um identificador que identifica o dispositivo de entrada MIDI aberto. O identificador é usado para identificar o dispositivo em chamadas para outras funções de entrada MIDI.

uDeviceID

Identificador do dispositivo de entrada MIDI a ser aberto.

dwCallback

Ponteiro para uma função de retorno de chamada, um identificador de thread ou um identificador de uma janela chamada com informações sobre mensagens MIDI de entrada. Para obter mais informações sobre a função de retorno de chamada, consulte MidiInProc.

dwInstance

Dados de instância de usuário passados para a função de retorno de chamada. Esse parâmetro não é usado com funções ou threads de retorno de chamada de janela.

fdwOpen

Sinalizador de retorno de chamada para abrir o dispositivo e, opcionalmente, um sinalizador status que ajuda a regular transferências rápidas de dados. Pode ser os valores a seguir.

Valor Significado
CALLBACK_FUNCTION O parâmetro dwCallback é um endereço de procedimento de retorno de chamada.
CALLBACK_NULL Não há mecanismo de retorno de chamada. Esse valor é a configuração padrão.
CALLBACK_THREAD O parâmetro dwCallback é um identificador de thread.
CALLBACK_WINDOW O parâmetro dwCallback é um identificador de janela.
MIDI_IO_STATUS Quando esse parâmetro também especifica CALLBACK_FUNCTION, MIM_MOREDATA mensagens são enviadas para a função de retorno de chamada, bem como MIM_DATA mensagens. Ou, se esse parâmetro também especificar CALLBACK_WINDOW, MM_MIM_MOREDATA mensagens serão enviadas para a janela, bem como MM_MIM_DATA mensagens. Esse sinalizador não afeta os retornos de chamada de evento ou thread.
 

A maioria dos aplicativos que usam um mecanismo de retorno de chamada especificará CALLBACK_FUNCTION para esse parâmetro.

Retornar valor

Retorna MMSYSERR_NOERROR se tiver êxito ou um erro de outra forma. Os possíveis valores de erro incluem o seguinte/

Código de retorno Descrição
MMSYSERR_ALLOCATED
O recurso especificado já está alocado.
MMSYSERR_BADDEVICEID
O identificador de dispositivo especificado está fora do intervalo.
MMSYSERR_INVALFLAG
Os sinalizadores especificados por dwFlags são inválidos.
MMSYSERR_INVALPARAM
O ponteiro ou estrutura especificado é inválido.
MMSYSERR_NOMEM
O sistema não pode alocar ou bloquear memória.

Comentários

Para determinar o número de dispositivos de entrada MIDI presentes no sistema, use a função midiInGetNumDevs . O identificador de dispositivo especificado por wDeviceID varia de zero a um menor que o número de dispositivos presentes.

Se uma janela ou thread for escolhido para receber informações de retorno de chamada, as seguintes mensagens serão enviadas para o procedimento de janela ou thread para indicar o progresso da entrada MIDI: MM_MIM_OPEN, MM_MIM_CLOSE, MM_MIM_DATA, MM_MIM_LONGDATA, MM_MIM_ERROR, MM_MIM_LONGERROR e MM_MIM_MOREDATA.

Se uma função for escolhida para receber informações de retorno de chamada, as seguintes mensagens serão enviadas para a função para indicar o progresso da entrada MIDI: MIM_OPEN, MIM_CLOSE, MIM_DATA, MIM_LONGDATA, MIM_ERROR, MIM_LONGERROR e MIM_MOREDATA.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho mmeapi.h (inclua Windows.h)
Biblioteca Winmm.lib
DLL Winmm.dll

Confira também

Funções MIDI