Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A função modMessage é a função de ponto de entrada para drivers de saída MIDI (interface digital de instrumento musical) e para drivers de sintetizador internos. Para obter mais informações sobre mensagens de dispositivo de áudio relacionadas ao MIDI, consulte Mensagens de Dispositivo de Áudio para MIDI
Sintaxe
DWORD modMessage(
UINT uDeviceID,
UINT uMsg,
DWORD_PTR dwUser,
DWORD_PTR dwParam1,
DWORD_PTR dwParam2
);
Parâmetros
uDeviceID
Especifica a ID do dispositivo de destino. As IDs do dispositivo são sequenciais e têm um valor inicial igual a zero e um valor final igual a um menor que o número de dispositivos suportados pelo driver.uMsg
Especifica a mensagem que o WINMM envia ao driver em resposta a uma chamada do aplicativo cliente.dwUser
Para a mensagem MODM_OPEN , o driver deve preencher esse local com seus dados de instância. Para qualquer outra mensagem, os dados da instância são retornados para o driver. Os drivers que dão suporte a vários clientes podem usar esses dados de instância para rastrear qual cliente está associado à mensagem.dwParam1
Especifica um parâmetro dependente de mensagem.dwParam2
Especifica um parâmetro dependente de mensagem. Se houver sinalizadores que fornecem informações adicionais para o driver que funciona com modMessage, o WINMM usará esse parâmetro para passar os sinalizadores.
Valor de retorno
A função modMessage retornará MMSYSERR_NOERROR se puder processar com êxito a mensagem recebida do MMSYSTEM. Caso contrário, ele retornará uma das seguintes mensagens de erro.
| Código de retorno | Descrição |
|---|---|
| MMSYSERR_ERROR | Erro não especificado. |
| MMSYSERR_BADDEVICEID | A ID do dispositivo especificada está fora do intervalo. |
| MMSYSERR_NOTENABLED | Falha ao carregar ou inicializar o driver. |
| MMSYSERR_ALLOCATED | O dispositivo especificado já está alocado. |
| MMSYSERR_INVALHANDLE | O identificador do dispositivo especificado é inválido. |
| MMSYSERR_NODRIVER | Nenhum driver de dispositivo está presente. |
| MMSYSERR_NOMEM | Erro de alocação de memória. |
| MMSYSERR_NOTSUPPORTED | Não há suporte para a função solicitada pela mensagem. |
| MMSYSERR_BADERRNUM | O valor do erro está fora do intervalo. Consulte a seção Comentários para obter mais detalhes. |
| MMSYSERR_INVALFLAG | Um sinalizador inválido foi passado para modMessage (usando dwParam2). |
| MMSYSERR_INVALPARAM | Um parâmetro inválido foi passado para modMessage. |
| MMSYSERR_HANDLEBUSY | O identificador especificado está sendo usado simultaneamente por outro thread (por exemplo, um thread de retorno de chamada). |
| MMSYSERR_INVALIDALIAS | O alias especificado não foi encontrado. |
| MMSYSERR_BADDB | Banco de dados inválido do Registro. |
| MMSYSERR_KEYNOTFOUND | A chave do Registro especificada não foi encontrada. |
| MMSYSERR_READERROR | Erro de leitura do Registro. |
| MMSYSERR_WRITEERROR | Erro de gravação do Registro. |
| MMSYSERR_DELETEERROR | Erro de exclusão do Registro. |
| MMSYSERR_VALNOTFOUND | O valor do Registro especificado não foi encontrado. |
| MMSYSERR_NODRIVERCB | O driver que funciona com modMessage não chama DriverCallback. |
| MMSYSERR_MOREDATA | modMessage tem mais dados a serem retornados. |
| MMSYSERR_LASTERROR | Indica que este é o último erro no intervalo de valores de erro. Para obter mais detalhes, consulte a seção Comentários. |
Observações
Mensagens de dispositivo de áudio são constantes definidas pelo sistema. Portanto, quando o modMessage recebe uma mensagem de dispositivo de áudio, ele usa uma instrução switch para determinar a ação a ser executada, com base no valor da mensagem.
O intervalo de mensagens de erro que modMessage pode retornar depende da mensagem de que estava processando quando o erro ocorreu. Os valores numéricos das mensagens de erro MMSYSERR_ começam com zero (para MMSYSERR_NOERROR) e continuam com MMSYSERR_BASE + n, em que n é um inteiro de 1 a 21. O valor para MMSYSERR_BASE é uma constante definida. Para obter mais informações sobre MSYSERR_BASE e as mensagens de erro MMSYSERR_, consulte Mmsystem.h no SDK do Windows e Mmddk.h no WDK, respectivamente.
Requisitos
Plataforma de destino |
Área de trabalho |
Versão |
Disponível com o Windows XP e sistemas operacionais Windows posteriores. |
Cabeçalho |
Mmddk.h (inclua Mmddk.h, Mmsystem.h ou Windows.h) |