BatteryClassIoctl 함수(batclass.h)
BatteryClassIoctl 은 시스템 정의 배터리 IOCTL을 처리합니다.
구문
NTSTATUS BATTERYCLASSAPI BatteryClassIoctl(
[in] PVOID ClassData,
[in, out] PIRP Irp
);
매개 변수
[in] ClassData
이전에 BatteryClassInitializeDevice에서 반환된 배터리 클래스 핸들에 대한 포인터입니다.
[in, out] Irp
처리할 IOCTL을 포함하는 IRP에 대한 포인터입니다.
반환 값
BatteryClassIoctl 은 요청을 충족하고 IRP를 완료할 때 STATUS_SUCCESS 반환합니다. 배터리 IOCTL을 지정하는 디바이스 제어 IRP 이외의 모든 IRP에 대한 STATUS_NOT_SUPPORTED 반환합니다.
설명
BatteryClassIoctl 은 배터리용 디바이스 제어 IRP를 처리하고 완료합니다. 이러한 IRP에는 다음 I/O 제어 코드 중 하나가 있습니다.
- IOCTL_BATTERY_QUERY_INFORMATION
- IOCTL_BATTERY_QUERY_STATUS
- IOCTL_BATTERY_QUERY_TAG
- IOCTL_BATTERY_SET_INFORMATION
미니클래스 드라이버가 IRP_MJ_DEVICE_CONTROL 요청으로 호출되는 경우 IRP에 미니클래스 드라이버가 정의한 프라이빗 IOCTL이 포함되어 있는지 여부를 결정해야 합니다. 이 경우 미니클래스 드라이버는 요청을 충족하고 IRP를 완료한 다음 반환해야 합니다.
IRP에 공용 IOCTL이 포함된 경우 드라이버는 IRP를 클래스 드라이버의 BatteryClassIoctl 루틴에 전달해야 합니다. 이 루틴은 IRP를 검사하고, 호출자의 배터리 장치에 적용되는지 여부를 확인하고, 그렇다면 적절한 BatteryMiniXxx 루틴을 호출하여 요청된 작업을 수행합니다.
BatteryClassIoctl이 IRP에 대한 STATUS_NOT_SUPPORTED 반환하는 경우 미니클래스 드라이버는 IRP를 완료하거나 다음 하위 드라이버로 전달해야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | batclass.h(Batclass.h 포함) |
라이브러리 | Battc.lib |