SYSTEM_POWER_STATUS 結構 (winbase.h)
包含系統電源狀態的相關資訊。
語法
typedef struct _SYSTEM_POWER_STATUS {
BYTE ACLineStatus;
BYTE BatteryFlag;
BYTE BatteryLifePercent;
BYTE SystemStatusFlag;
DWORD BatteryLifeTime;
DWORD BatteryFullLifeTime;
} SYSTEM_POWER_STATUS, *LPSYSTEM_POWER_STATUS;
成員
ACLineStatus
AC 電源狀態。 這個成員可以是下列其中一個值。
值 | 意義 |
---|---|
|
離線 |
|
線上 |
|
未知狀態 |
BatteryFlag
電池計量狀態。 此成員可以包含下列一或多個旗標。
值 | 意義 |
---|---|
|
高- 電池容量超過 66% |
|
低- 電池容量小於 33%。 |
|
重大— 電池容量小於 5% |
|
充電 |
|
無系統電池 |
|
未知狀態 - 無法讀取電池旗標資訊 |
如果電池未充電,且電池容量介於低和高之間,則值為零。
BatteryLifePercent
剩餘電池計量的百分比。 這個成員可以是範圍 0 到 100 的值,如果狀態不明,則為 255。
SystemStatusFlag
省電模式的狀態。 若要參與能源節約,請在省電模式開啟時避免耗用大量資源的工作。 若要在此值變更時收到通知,請使用電源設定 GUID呼叫RegisterPowerSettingNotification函式,GUID_POWER_SAVING_STATUS。
值 | 意義 |
---|---|
|
省電模式已關閉。 |
|
省電模式開啟。 盡可能節省能源。 |
注意此旗標和GUID_POWER_SAVING_STATUS GUID 是在 Windows 10 中引進。 此旗標先前已保留,名為 Reserved1,且值為 0。
BatteryLifeTime
剩餘的電池使用時間秒數,如果剩餘的秒數不明或裝置已連線到 AC 電源,則為 –1。
BatteryFullLifeTime
處於完全充電狀態的電池使用時間秒數,如果完整電池存留期不明,或裝置是否連線到 AC 電源,則為 –1。
備註
系統只能根據BatteryLifeTime 和 BatteryLifePercent的計算來估計BatteryFullLifeTime。 若沒有智慧電池子系統,此值可能不夠精確,因此很有用。
規格需求
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
標頭 | winbase.h (包含 Windows.h) |