IOCTL_KS_HANDSHAKE IOCTL (ks.h)
Un client in modalità kernel può usare IOCTL_KS_HANDSHAKE per negoziare un'interfaccia tra pin AVStream non connessi. Il client chiama KsSynchronousDeviceControl con IOCTL_KS_HANDSHAKE e i parametri descritti di seguito.
Per tentare un handshake del protocollo con un pin già connesso, chiamare KsPinHandshake.
Codice principale
Buffer di input
Il client inserisce un puntatore a una struttura di tipo KSHANDSHAKE nel parametro InBuffer .
Lunghezza del buffer di input
InLength deve essere uguale a sizeof(KSHANDSHAKE).
Buffer di output
Il client inserisce un puntatore a una struttura di tipo KSHANDSHAKE nel parametro OutBuffer . Se la richiesta ha esito positivo, le informazioni handshake vengono inserite in questa posizione.
Lunghezza del buffer di output
OutLength deve essere uguale a sizeof(KSHANDSHAKE).
Blocco dello stato
Se la richiesta ha esito positivo, IoStatus.Information è impostata su sizeof(KSHANDSHAKE).
Questo IOCTL può essere inviato solo dalla modalità kernel. Se la richiesta viene inviata dalla modalità utente, il membro Stato è impostato su STATUS_INVALID_DEVICE_REQUEST.
Se i parametri InLength e OutLength nella chiamata a KsSynchronousDeviceControl non sono entrambi uguali a sizeof(KSHANDSHAKE), il membro Status è impostato su STATUS_INVALID_BUFFER_SIZE.
Requisiti
Requisito | Valore |
---|---|
Intestazione | ks.h (include Ks.h) |