Partager via


SRB_PROPOSE_DATA_FORMAT

Le pilote de classe émet cette demande pour déterminer si le flux prend en charge un format de données donné.

Valeur de retour

Le minidriver doit définir l’un des éléments suivants comme status dans le SRB :

STATUS_SUCCESS
Indique la réussite de la commande.

STATUS_NOT_IMPLEMENTED
Indique que la fonction n’est pas prise en charge par le minidriver.

STATUS_NOT_SUPPORTED
Indique que le format proposé n’est pas pris en charge par le minidriver.

STATUS_IO_DEVICE_ERROR
Indique qu’une défaillance matérielle s’est produite.

Commentaires

Lorsque le pilote de classe reçoit une demande de KSPROPERTY_CONNECTION_PROPOSEDATAFORMAT , il utilise ce code SRB pour déterminer si le format proposé est pris en charge. Le pilote de classe transmet le format de données proposé dans CommandData. Membre OpenFormat pointé vers par pSrb. Le pointeur pSrb pointe vers une structure HW_STREAM_REQUEST_BLOCK .

Si le minidriver ne prend pas en charge le format de données, il définit pSrb-Status> sur STATUS_NOT_SUPPORTED. Si le minidriver est en mesure de basculer le flux au format spécifié, il définit ce champ sur STATUS_SUCCESS.

Si le minidriver est en mesure d’accepter le nouveau format, le pilote de classe peut envoyer ultérieurement au minidriver un changement de format, ce qui est indiqué par le membre OptionsFlags dans une structure KSSTREAM_HEADER .

Voir aussi

SRB_SET_DATA_FORMAT

SRB_GET_DATA_FORMAT