IOCTL_LAMP_GET_CAPABILITIES_WHITE IOCTL (lamp.h)
当设备配置为发出白光时,IOCTL_LAMP_GET_CAPABILITIES_WHITE 控制代码会查询灯的功能。
#define IOCTL_LAMP_GET_CAPABILITIES_WHITE \
CTL_CODE(IOCTL_LAMP_BASE, 0x0000, METHOD_BUFFERED, FILE_ANY_ACCESS)
主要代码
输入缓冲区
Irp->AssociatedIrp.SystemBuffer
指向 LAMP_CAPABILITIES_WHITE类型的缓冲区。
输入缓冲区长度
缓冲区的长度。
输出缓冲区
Irp->AssociatedIrp.SystemBuffer
充满了灯硬件支持的所有功能。
输出缓冲区长度
IO_STACK_LOCATION.Parameters.DeviceIoControl.OutputBufferLength
是在 Irp->AssociatedIrp.SystemBuffer
字段中传递的缓冲区的长度(以字节为单位)。
状态块
驱动程序将 Irp->IoStatus.Status
设置为 STATUS_SUCCESS 或相应的错误状态。 它将 Irp->IoStatus.Information
设置为保存缓冲区所需的字节数。
言论
根据要求,驱动程序支持 GUID_DEVINTERFACE_LAMP 接口的灯需要支持发出白光。
此 IOCTL 的有效负载是 LAMP_CAPABILITIES_WHITE 结构。
IsLightIntensityAdjustable 字段指示是否可以编程亮度级别。 如果此字段的计算结果为 FALSE,则表示基础设备仅支持开/关开关,并且无法调整光强度。
要求
要求 | 价值 |
---|---|
标头 | lamp.h |