Condividi tramite


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

IRP_MJ_DEVICE_CONTROL

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)

Vedi anche

AVStrMiniPinHandshake

KSHANDSHAKE

KsPinHandshake

KsPinRegisterHandshakeCallback