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


IOCTL_LAMP_GET_INTENSITY_WHITE IOCTL (lamp.h)

Код элемента управления IOCTL_LAMP_GET_INTENSITY_WHITE запрашивает интенсивность света, когда лампа настроена для испускать белый свет.

#define IOCTL_LAMP_GET_INTENSITY_WHITE \
    CTL_CODE(IOCTL_LAMP_BASE, 0x0004, METHOD_BUFFERED, FILE_ANY_ACCESS)

Основной код

IRP_MJ_DEVICE_CONTROL

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

Irp->AssociatedIrp.SystemBuffer указывает на LAMP_INTENSITY_WHITE структуру.

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

Длина структуры LAMP_INTENSITY_WHITE .

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

Irp->AssociatedIrp.SystemBuffer заполняется информацией о интенсивности света.

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

IO_STACK_LOCATION.Parameters.DeviceIoControl.OutputBufferLength — это длина буфера в байтах, передаваемая Irp->AssociatedIrp.SystemBuffer в поле .

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

Драйвер задает Irp->IoStatus.Statusзначение STATUS_SUCCESS или соответствующее состояние ошибки.

Если устройство было приобретено драйвером камеры, драйвер лампы должен вернуть ошибку STATUS_RESOURCE_IN_USE через Irp->IoStatus.Status.

Комментарии

Тип полезных данных этого IOCTL является LAMP_INTENSITY_WHITE структурой.

Поле Значение — это интенсивность белого света в процентах (от 0 до 100).

Требования

Требование Значение
Заголовок lamp.h