次の方法で共有


IOCTL_LAMP_GET_EMITTING_LIGHT IOCTL (lamp.h)

IOCTL_LAMP_GET_EMITTING_LIGHT制御コードは、ランプがオンになっている場合にクエリを実行します。

#define IOCTL_LAMP_GET_EMITTING_LIGHT \
    CTL_CODE(IOCTL_LAMP_BASE, 0x0008, METHOD_BUFFERED, FILE_ANY_ACCESS)

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

Irp->AssociatedIrp.SystemBuffer は BOOLEAN 型のバッファーを指 します

入力バッファーの長さ

ブール値の長さ。

出力バッファー

Irp->AssociatedIrp.SystemBuffer にはランプの状態が含まれます。 ランプ が点灯し、発光している場合は TRUE。 それ 以外の場合は FALSE。

出力バッファーの長さ

IO_STACK_LOCATION.Parameters.DeviceIoControl.OutputBufferLength は、フィールドに渡されるバッファーの長さ (バイト単位) Irp->AssociatedIrp.SystemBuffer です。

ステータス ブロック

ドライバーは、STATUS_SUCCESSまたは適切なエラー状態に設定Irp->IoStatus.Statusします。 DWORD 値を保持するために必要なバイト数に設定Irp->IoStatus.Informationされます。

デバイスがカメラ ドライバーによって取得された場合、ランプ ドライバーは を介して STATUS_RESOURCE_IN_USE エラーを Irp->IoStatus.Status返す必要があります。

要件

要件
Header lamp.h