共用方式為


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
標準電池 IOCTL 會對應至 battery miniclass 驅動程式例程 , (BatteryMiniXxx 例程) 。

使用 IRP_MJ_DEVICE_CONTROL 要求呼叫 miniclass 驅動程式時,它應該判斷 IRP 是否包含 miniclass 驅動程式所定義的任何私人 IOCTL。 如果是,迷你類別驅動程式應該滿足要求、完成 IRP 並傳回。

如果 IRP 包含公用 IOCTL,驅動程式應該將 IRP 傳遞至類別驅動程式的 BatteryClassIoctl 例程。 此例程會檢查 IRP、判斷它是否適用於呼叫者的電池裝置,如果是的話,請呼叫適當的 BatteryMiniXxx 例程來執行要求的作業。

如果 BatteryClassIoctl 傳回 IRP 的STATUS_NOT_SUPPORTED,迷你類別驅動程式必須完成 IRP,或將它轉送到下一個較低的驅動程式。

規格需求

需求
目標平台 桌面
標頭 batclass.h (include Batclass.h)
程式庫 Battc.lib

另請參閱

BatteryMiniQueryInformation

BatteryMiniQueryStatus

BatteryMiniQueryTag

BatteryMiniSetInformation