CODECAPI_ALLSETTINGS
La propriété CODECAPI_ALLSETTINGS est utilisée pour transmettre un bloc de données généré par minidriver.
Obtenir | Définissez | Cible | Type de descripteur de propriété | Type de valeur de propriété |
---|---|---|---|---|
Oui | Oui | Filtrer | KSPROPERTY | PVOID |
La valeur de propriété (données d’opération) est de type PVOID, qui est un pointeur vers une mémoire tampon en mode utilisateur pour le bloc de données généré par minidriver.
Commentaires
Sur un appel de propriété :
Si une application effectue un appel get d’une propriété avec une mémoire tampon de longueur nulle, le minidriver doit retourner STATUS_BUFFER_OVERFLOW et spécifier la taille de mémoire tampon requise dans le champ Irp-IoStatus.Information>. Si la mémoire tampon de longueur n’est pas nulle, le minidriver doit retourner STATUS_BUFFER_TOO_SMALL si la mémoire tampon fournie est trop petite pour le bloc de données. Sinon, le minidriver ajoute ses paramètres dans un bloc de données qui peut être restauré ultérieurement.
Il incombe au minidriver d’ajouter des vérifications d’intégrité des données aux données, telles qu’un GUID unique pour indiquer que le minidriver a généré les données, une case activée de redondance cyclique (CRC) et une longueur d’en-tête.
Les données retournées doivent être légères et contenir uniquement les informations nécessaires pour reconstruire les paramètres actuels.
Les applications utilisent cette propriété pour les undos multiniveau, stockés avec leurs projets, etc.
Sur un jeu de propriétés, appelez :
Le minidriver doit vérifier l’intégrité des données et case activée que la taille du bloc de données est inférieure à la taille maximale des données (par exemple, rejeter tout ce qui dépasse une certaine taille). Il doit également vérifier le CRC et la longueur de l’en-tête. Le minidriver doit également mettre en cache toutes les modifications à propager pour CODECAPI_CURRENTCHANGELIST.
Spécifications
En-têtes: Déclaré dans ksmedia.h. Incluez ksmedia.h.