共用方式為


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_MJ_DEVICE_CONTROL

輸入緩衝區

Irp->AssociatedIrp.SystemBuffer 指向 類型為 LAMP_CAPABILITIES_WHITE的緩衝區。

輸入緩衝區長度

緩衝區的長度。

輸出緩衝區

Irp->AssociatedIrp.SystemBuffer 已填入燈光硬體支援的所有功能。

輸出緩衝區長度

IO_STACK_LOCATION.Parameters.DeviceIoControl.OutputBufferLength 是緩衝區 () 傳入 Irp->AssociatedIrp.SystemBuffer 欄位中的位元組長度。

狀態區塊

驅動程式會將 設定 Irp->IoStatus.StatusSTATUS_SUCCESS 或適當的錯誤狀態。 它會設定 Irp->IoStatus.Information 為保存緩衝區所需的位元元組數目。

備註

根據需求,需要驅動程式支援 GUID_DEVINTERFACE_LAMP 介面的燈光,才能支持發出白色光線。

這個 IOCTL 的承載是 LAMP_CAPABILITIES_WHITE 結構。

IsLightIntensityAdjustable 字段指出是否可以程序設計亮度等級。 如果此欄位評估為 FALSE,表示基礎裝置僅支援開/關開關,且無法調整光線強度。

規格需求

需求
標頭 lamp.h