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 電源狀態。 這個成員可以是下列其中一個值。

意義
0
離線
1
線上
255
未知狀態

BatteryFlag

電池計量狀態。 此成員可以包含下列一或多個旗標。

意義
1
高- 電池容量超過 66%
2
低- 電池容量小於 33%。
4
重大— 電池容量小於 5%
8
充電
128
無系統電池
255
未知狀態 - 無法讀取電池旗標資訊
 

如果電池未充電,且電池容量介於低和高之間,則值為零。

BatteryLifePercent

剩餘電池計量的百分比。 這個成員可以是範圍 0 到 100 的值,如果狀態不明,則為 255。

SystemStatusFlag

省電模式的狀態。 若要參與能源節約,請在省電模式開啟時避免耗用大量資源的工作。 若要在此值變更時收到通知,請使用電源設定 GUID呼叫RegisterPowerSettingNotification函式,GUID_POWER_SAVING_STATUS

意義
0
省電模式已關閉。
1
省電模式開啟。 盡可能節省能源。
 
注意此旗標和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)

另請參閱

GetSystemPowerStatus

PBT_APMPOWERSTATUSCHANGE

硬體元件指導方針中的省電模式 ()