Partilhar via


Método IMiniportMidiStream::Read (portcls.h)

O método Read lê dados de um fluxo MIDI de entrada.

Sintaxe

NTSTATUS Read(
  [in]  PVOID  BufferAddress,
  [in]  ULONG  BufferLength,
  [out] PULONG BytesRead
);

Parâmetros

[in] BufferAddress

Especifica o endereço de um buffer alocado pelo chamador. O método copia os dados MIDI de entrada do dispositivo para o buffer. O tamanho alocado desse buffer deve ser maior ou igual a bufferLength.

[in] BufferLength

Especifica o comprimento em bytes do buffer apontado por BufferAddress.

[out] BytesRead

Ponteiro de saída para uma variável alocada por chamador na qual o método grava uma contagem especificando o número real de bytes lidos com êxito do dispositivo no buffer.

Valor de retorno

Read retornará STATUS_SUCCESS se a chamada tiver sido bem-sucedida. Caso contrário, o método retornará um código de erro apropriado. A tabela a seguir mostra alguns dos possíveis códigos de status de retorno.

Código de retorno Descrição
STATUS_INVALID_DEVICE_REQUEST
Solicitação de dispositivo inválida (por exemplo, chamando Read em um fluxo de saída MIDI).

Observações

O driver de miniporto chama IPortMidi::Notify para notificar o driver de porta quando os dados MIDI de entrada estiverem disponíveis no dispositivo de captura. O driver de porta chama IMiniportMidi::Read para recuperar os dados. O driver de porta continua a chamar Read enquanto mais dados estiverem disponíveis.

O método Read retorna STATUS_SUCCESS e uma contagem BytesRead de zero para indicar que não há mais dados de entrada MIDI disponíveis no momento do dispositivo.

Requisitos

Requisito Valor
da Plataforma de Destino Universal
cabeçalho portcls.h (inclua Portcls.h)
IRQL DISPATCH_LEVEL

Consulte também

IMiniportMidiStream

IMiniportMidiStream::Write

IPortMidi::Notify