Поделиться через


IOCTL_KS_HANDSHAKE IOCTL (ks.h)

Клиент в режиме ядра может использовать IOCTL_KS_HANDSHAKE для согласования интерфейса между несоединенных пин-кодами AVStream. Клиент вызывает KsSynchronousDeviceControl с IOCTL_KS_HANDSHAKE и параметрами, описанными ниже.

Чтобы попытаться установить подтверждение протокола с помощью пин-кода, который уже подключен, вызовите KsPinHandshake.

Основной код

IRP_MJ_DEVICE_CONTROL

Входной буфер

Клиент помещает указатель на структуру типа KSHANDSHAKE в параметре InBuffer.

Длина входного буфера

InLength должно быть равно sizeof(KSHANDSHAKE).

Выходной буфер

Клиент помещает указатель на структуру типа KSHANDSHAKE в параметре OutBuffer. Если запрос выполнен успешно, в этом расположении помещается информация подтверждения.

Длина выходного буфера

OutLength должны быть равными размеру (KSHANDSHAKE).

Блок состояния

Если запрос выполнен успешно, IoStatus.Information имеет значение sizeof(KSHANDSHAKE).

Этот IOCTL можно отправлять только из режима ядра. Если запрос отправляется из пользовательского режима, для элемента состояния задано значение STATUS_INVALID_DEVICE_REQUEST.

Если параметры InLength и OutLength в вызове KsSynchronousDeviceControl не равны sizeof(KSHANDSHAKE), то для элемента состояния задано значение STATUS_INVALID_BUFFER_SIZE.

Требования

Требование Ценность
заголовка ks.h (include Ks.h)

См. также

AVStrMiniPinHandshake

KSHANDSHAKE

KsPinHandshake

KsPinRegisterHandshakeCallback