Compartilhar via


SRB_READ_DATA

O driver de classe recebeu uma solicitação de leitura para o minidriver.

Valor retornado

O minidriver pode definir um dos seguintes como o status no SRB ou pode passar códigos de erro adicionais para indicar situações de erro, como erros de memória e parâmetros inválidos. O driver de classe verifica apenas STATUS_SUCCESS.

STATUS_SUCCESS
Indica a conclusão bem-sucedida do comando.

STATUS_NOT_IMPLEMENTED
Indica que a função não é compatível com o minidriver.

STATUS_IO_DEVICE_ERROR
Indica que ocorreu uma falha de hardware.

Comentários

O valor de pSrb-CommandData>.DataBufferArray aponta para uma matriz de estruturas de KSSTREAM_HEADER, que juntas descrevem o buffer de dados. O ponteiro pSrb aponta para uma estrutura de HW_STREAM_REQUEST_BLOCK . pSrb-CommandData>.NumberOfBuffers especifica o tamanho da matriz.

Quando o comando SRB_READ_DATA é recebido pelo minidriver, a rotina de minidriver de resposta deve:

  1. Verifique para determinar o estado atual do fluxo. O minidriver só deve aceitar solicitações de leitura quando estiver no estado Pausar ou Executar. Se o fluxo for interrompido, ele deverá ser concluído imediatamente e retornar o SRB.

  2. Coloque o SRB na fila.