SRB_PROPOSE_DATA_FORMAT
O driver de classe emite essa solicitação para determinar se o fluxo dá suporte a um determinado formato de dados.
Valor retornado
O minidriver deve definir um dos seguintes como o status no SRB:
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_NOT_SUPPORTED
Indica que o formato proposto não é compatível com o minidriver.
STATUS_IO_DEVICE_ERROR
Indica que ocorreu uma falha de hardware.
Comentários
Quando o driver de classe recebe uma solicitação KSPROPERTY_CONNECTION_PROPOSEDATAFORMAT , ele usa esse código SRB para determinar se o formato proposto tem suporte. O driver de classe passa o formato de dados proposto no CommandData. Membro OpenFormat apontado por pSrb. O ponteiro pSrb aponta para uma estrutura de HW_STREAM_REQUEST_BLOCK .
Se o minidriver não der suporte ao formato de dados, ele definirá pSrb-Status> como STATUS_NOT_SUPPORTED. Se o minidriver for capaz de alternar o fluxo para o formato especificado, ele definirá esse campo como STATUS_SUCCESS.
Se o minidriver for capaz de aceitar o novo formato, o driver de classe em algum momento posterior poderá enviar ao minidriver uma alteração de formato, que é indicada pelo membro OptionsFlags em uma estrutura KSSTREAM_HEADER .