Struttura KSQUERYBUFFER (ks.h)
La struttura KSQUERYBUFFER viene usata 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;
Members
Event
Specifica la descrizione dell'evento originale, con il flag KSEVENT_TYPE_QUERYBUFFER impostato anziché il flag KSEVENT_TYPE_ENABLEBUFFERED .
EventData
Puntatore a una struttura KSEVENTDATA . Si tratta dello stesso puntatore fornito ad AVStrMiniAddEvent all'ora 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.
Commenti
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 su cui viene eseguita la 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. La dimensione del buffer viene restituita nel parametro BytesReturned , con stato di avviso di 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 era memorizzato nel buffer |
STATUS_NO_MORE_ENTRIES | nessun buffer disponibile |
STATUS_BUFFER_TOO_SMALL | dimensioni del buffer insufficienti. |
STATUS_SUCCESS | la vita è buona. |
Requisiti
Requisito | Valore |
---|---|
Intestazione | ks.h (include Ks.h) |