Struttura KSQUERYBUFFER (ks.h)
La struttura di KSQUERYBUFFER viene utilizzata durante l'esecuzione di query per i buffer in sospeso disponibili in un evento con KSEVENT_TYPE_QUERYBUFFER.
Sintassi
typedef struct {
KSEVENT Event;
PKSEVENTDATA EventData;
PVOID Reserved;
} KSQUERYBUFFER, *PKSQUERYBUFFER;
Membri
Event
Specifica la descrizione dell'evento originale, con il flag KSEVENT_TYPE_QUERYBUFFER impostato anziché il flag KSEVENT_TYPE_ENABLEBUFFERED.
EventData
Puntatore a una strutturaKSEVENTDATA. Si tratta dello stesso puntatore fornito a AVStrMiniAddEvent in fase di abilitazione dell'evento. Questo puntatore viene usato come identificatore univoco nell'individuazione dell'evento, proprio come viene usato durante la disabilitazione dell'evento.
Reserved
Non usato e impostato su zero.
Osservazioni
Se KSEVENT_TYPE_ENABLEBUFFERED è stato usato per abilitare un evento che memorizza nel buffer anche i dati, è possibile eseguire query sui dati generati dall'evento usando questo metodo. La descrizione dell'evento sottoposto a query viene fornita come primo parametro e qualsiasi buffer viene fornito come secondo parametro per la query.
È possibile eseguire query sulla lunghezza del buffer fornendo un buffer di output di lunghezza zero. Le dimensioni del buffer vengono restituite nel parametro BytesReturned, con stato di avviso STATUS_BUFFER_OVERFLOW.
In alternativa, la query restituisce uno dei valori di stato seguenti:
Valore restituito | Descrizione |
---|---|
STATUS_NOT_FOUND | evento non trovato |
STATUS_INVALID_PARAMETER | non è stato memorizzato nel buffer |
STATUS_NO_MORE_ENTRIES | nessun buffer disponibile |
STATUS_BUFFER_TOO_SMALL | le dimensioni del buffer non sono sufficienti. |
STATUS_SUCCESS | la vita è buona. |
Fabbisogno
Requisito | Valore |
---|---|
intestazione | ks.h (include Ks.h) |