CODECAPI_ALLSETTINGS
La proprietà CODECAPI_ALLSETTINGS viene usata per passare indietro e avanti un blocco di dati generato da minidriver.
Recupero | Set | Destinazione | Tipo di descrittore delle proprietà | Tipo di valore della proprietà |
---|---|---|---|---|
Sì | Sì | Filtra | KSPROPERTY | PVOID |
Il valore della proprietà (dati dell'operazione) è di tipo PVOID, ovvero un puntatore a un buffer in modalità utente per il blocco generato dal minidriver dei dati.
Commenti
In una proprietà ottenere una chiamata:
Se un'applicazione effettua una chiamata a una proprietà con un buffer di lunghezza zero, il minidriver deve restituire STATUS_BUFFER_OVERFLOW e specificare le dimensioni del buffer necessarie nel campo Irp-IoStatus.Information>. Se il buffer di lunghezza è diverso da zero, il minidriver deve restituire STATUS_BUFFER_TOO_SMALL se il buffer fornito è troppo piccolo per il blocco dati, altrimenti il minidriver inserisce le impostazioni in un blocco di dati che può essere ripristinato in un secondo momento.
È responsabilità del minidriver aggiungere controlli di integrità dei dati ai dati, ad esempio un GUID univoco per indicare il minidriver generato i dati, un controllo di ridondanza ciclico (CRC) e una lunghezza di intestazione.
I dati restituiti devono essere leggeri e contengono solo informazioni necessarie per ricostruire le impostazioni correnti.
Le applicazioni useranno questa proprietà per l'annullamento multilivello, archiviate con i progetti e così via.
In una chiamata del set di proprietà:
Il minidriver deve verificare l'integrità dei dati e verificare che le dimensioni del blocco dati siano sotto le dimensioni massime dei dati, ad esempio rifiutare qualsiasi elemento su determinate dimensioni. Deve anche verificare la lunghezza dell'intestazione e del CRC. Il minidriver deve anche memorizzare nella cache eventuali modifiche da propagare per CODECAPI_CURRENTCHANGELIST.
Requisiti
Intestazioni: Dichiarato in ksmedia.h. Includere ksmedia.h.