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

O Read método 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 pelo chamador na qual o método grava uma contagem especificando o número real de bytes lidos com êxito do dispositivo no buffer.

Retornar valor

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, chamar Read em um fluxo de saída MIDI).

Comentários

O driver de miniporta chama IPortMidi::Notify para notificar o driver de porta quando os dados MIDI de entrada ficam 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 Read método retorna STATUS_SUCCESS e uma contagem bytesRead de zero para indicar que não há mais dados de entrada MIDI disponíveis no dispositivo no momento.

Requisitos

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

Confira também

IMiniportMidiStream

IMiniportMidiStream::Write

IPortMidi::Notify