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
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) |