IOCTL_KS_HANDSHAKE IOCTL (ks.h)

Un cliente en modo kernel puede usar IOCTL_KS_HANDSHAKE para negociar una interfaz entre patillas AVStream no conectadas. El cliente llama a KsSynchronousDeviceControl con IOCTL_KS_HANDSHAKE y los parámetros descritos a continuación.

Para intentar un protocolo de enlace de protocolo con un pin que ya está conectado, llame a KsPinHandshake.

Código principal

IRP_MJ_DEVICE_CONTROL

Búfer de entrada

El cliente coloca un puntero a una estructura de tipo KSHANDSHAKE en el parámetro InBuffer .

Longitud del búfer de entrada

InLength debe ser igual a sizeof(KSHANDSHAKE).

Búfer de salida

El cliente coloca un puntero a una estructura de tipo KSHANDSHAKE en el parámetro OutBuffer . Si la solicitud se realiza correctamente, la información del protocolo de enlace se coloca en esta ubicación.

Longitud del búfer de salida

OutLength debe ser igual a sizeof(KSHANDSHAKE).

Bloque de estado

Si la solicitud se realiza correctamente, IoStatus.Information se establece en sizeof(KSHANDSHAKE).

Este IOCTL solo se puede enviar desde modo kernel. Si la solicitud se envía desde el modo de usuario, el miembro Status se establece en STATUS_INVALID_DEVICE_REQUEST.

Si los parámetros InLength y OutLength de la llamada a KsSynchronousDeviceControl no son iguales a sizeof(KSHANDSHAKE), el miembro Status se establece en STATUS_INVALID_BUFFER_SIZE.

Requisitos

Requisito Valor
Header ks.h (incluya Ks.h)

Consulte también

AVStrMiniPinHandshake

KSHANDSHAKE

KsPinHandshake

KsPinRegisterHandshakeCallback