IOCTL_KS_HANDSHAKE IOCTL (ks.h)
Клиент в режиме ядра может использовать IOCTL_KS_HANDSHAKE для согласования интерфейса между несвязанными контактами AVStream. Клиент вызывает KsSynchronousDeviceControl с IOCTL_KS_HANDSHAKE и параметрами, описанными ниже.
Чтобы попытаться выполнить подтверждение протокола с уже подключенным контактом, вызовите KsPinHandshake.
Основной код
Входной буфер
Клиент помещает указатель на структуру типа KSHANDSHAKE в параметре InBuffer .
Длина входного буфера
Значение InLength должно быть равно sizeof(KSHANDSHAKE).
Выходной буфер
Клиент помещает указатель на структуру типа KSHANDSHAKE в параметре OutBuffer . Если запрос выполнен успешно, сведения о подтверждении помещаются в это расположение.
Длина выходного буфера
Значение OutLength должно быть равно sizeof(KSHANDSHAKE).
Блок состояния
Если запрос выполнен успешно, для Параметра IoStatus.Information устанавливается значение sizeof(KSHANDSHAKE).
Этот IOCTL можно отправлять только из режима ядра. Если запрос отправляется из пользовательского режима, для элемента Status устанавливается значение STATUS_INVALID_DEVICE_REQUEST.
Если параметры InLength и OutLength в вызове KsSynchronousDeviceControl не равны sizeof(KSHANDSHAKE), элемент Status имеет значение STATUS_INVALID_BUFFER_SIZE.
Требования
Требование | Значение |
---|---|
Заголовок | ks.h (включая Ks.h) |