74 InfoData.
cbSize =
sizeof(InfoData);
100 InterfaceData->
cbSize =
sizeof(*InterfaceData);
128 &bqi,
sizeof(bqi), ppmi->Name,
sizeof(ppmi->Name),
140 &bqi,
sizeof(bqi), ppmi->UniqueID,
sizeof(ppmi->UniqueID),
152 &bqi,
sizeof(bqi), &bi,
sizeof(bi),
165 &bws,
sizeof(bws), &
bs,
sizeof(
bs),
177 &bqi,
sizeof(bqi), &ppmi->BatteryLifeTime,
sizeof(ppmi->BatteryLifeTime),
185 &bqi,
sizeof(bqi), ppmi->Manufacturer,
sizeof(ppmi->Manufacturer),
254 WCHAR FormatBuffer[200];
269 RECT rcParent, rcWindow;
369 if (ppmi->Critical || (0 <= ppmi->BatteryLifePercent && ppmi->BatteryLifePercent < 5))
371 else if (5 <= ppmi->BatteryLifePercent && ppmi->BatteryLifePercent < 33)
373 else if (33 <= ppmi->BatteryLifePercent && ppmi->BatteryLifePercent < 66)
375 else if (66 <= ppmi->BatteryLifePercent && ppmi->BatteryLifePercent < 100)
377 else if (ppmi->BatteryLifePercent >= 100)
421 for (BatteryId = 0; BatteryId < 8; ++BatteryId)
442 for (BatteryId = 0; BatteryId < 8; ++BatteryId)
469 for (; BatteryId < 8; ++BatteryId)
#define IOCTL_BATTERY_QUERY_TAG
#define BATTERY_POWER_ON_LINE
#define BATTERY_DISCHARGING
#define IOCTL_BATTERY_QUERY_INFORMATION
#define IOCTL_BATTERY_QUERY_STATUS
#define ERROR_INSUFFICIENT_BUFFER
BOOL WINAPI DeviceIoControl(IN HANDLE hDevice, IN DWORD dwIoControlCode, IN LPVOID lpInBuffer OPTIONAL, IN DWORD nInBufferSize OPTIONAL, OUT LPVOID lpOutBuffer OPTIONAL, IN DWORD nOutBufferSize OPTIONAL, OUT LPDWORD lpBytesReturned OPTIONAL, IN LPOVERLAPPED lpOverlapped OPTIONAL)
#define IDC_BATTERYMANUFACTURER
#define IDI_BAT_DISCHRG_LOW
#define IDI_BAT_CHARGE_FULL
#define IDI_BAT_DISCHRG_HALF
#define IDC_BATTERYCHARGING0
#define IDC_BATTERYPOWERSTATE
#define IDI_BAT_CHARGE_HIGH
#define IDS_DETAILEDBATTERY
#define IDC_BATTERYCHEMISTRY
#define IDC_BATTERYPERCENT0
#define IDC_BATTERYUNIQUEID
#define IDI_BAT_CHARGE_LOW
#define IDD_POWERMETERDETAILS
#define IDI_BAT_CHARGE_HALF
#define IDI_BAT_DISCHRG_HIGH
#define IDI_BAT_DISCHRG_CRIT
#define IDI_BATTERYDETAIL0
#define IDC_CLICKBATTINFO
#define IDI_BAT_DISCHRG_FULL
#define IDI_BATTERYDETAIL7
#define IDI_BAT_CHARGE_CRIT
#define INVALID_HANDLE_VALUE
#define HeapFree(x, y, z)
#define FILE_ATTRIBUTE_NORMAL
BOOL WINAPI GetSystemPowerStatus(IN LPSYSTEM_POWER_STATUS PowerStatus)
HANDLE WINAPI DECLSPEC_HOTPATCH CreateThread(IN LPSECURITY_ATTRIBUTES lpThreadAttributes, IN DWORD dwStackSize, IN LPTHREAD_START_ROUTINE lpStartAddress, IN LPVOID lpParameter, IN DWORD dwCreationFlags, OUT LPDWORD lpThreadId)
BOOL WINAPI SetupDiEnumDeviceInterfaces(HDEVINFO DeviceInfoSet, PSP_DEVINFO_DATA DeviceInfoData, CONST GUID *InterfaceClassGuid, DWORD MemberIndex, PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData)
HDEVINFO WINAPI SetupDiGetClassDevsW(CONST GUID *class, LPCWSTR enumstr, HWND parent, DWORD flags)
BOOL WINAPI SetupDiDestroyDeviceInfoList(HDEVINFO devinfo)
_In_opt_ PFILE_OBJECT _In_opt_ PETHREAD Thread
static struct msdos_boot_sector bs
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
HMONITOR WINAPI MonitorFromWindow(HWND, DWORD)
static DWORD WINAPI PowerMeterDetailDlgThread(PVOID pParam)
static VOID PowerMeterDetail_UpdateStats(HWND hwndDlg)
INT_PTR CALLBACK PowerMeterDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
struct POWER_METER_INFO * PPOWER_METER_INFO
static VOID PowerMeterInfo_UpdateGlobalStats(_In_ PPOWER_METER_INFO ppmi)
static BOOL PowerMeterInfo_UpdateBatteryStats(_In_ PPOWER_METER_INFO ppmi, _In_ UINT BatteryId)
static HICON GetBattIcon(_In_ HINSTANCE hInst, _In_ PPOWER_METER_INFO ppmi)
static VOID CenterWindow(_In_ HWND hWnd)
static UINT SelectedBattery
ID of battery currently shown in the details dialog.
static VOID PowerMeterDetail_InitDialog(HWND hwndDlg)
static HWND hwndDlgDetail
Single modeless battery details dialog.
static VOID PowerMeter_InitDialog(HWND hwndDlg)
INT_PTR CALLBACK PowerMeterDetailDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
#define SetupDiGetInterfaceDeviceDetailW
#define DIGCF_INTERFACEDEVICE
STRSAFEAPI StringCchPrintfW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszFormat,...)
WCHAR DevicePath[ANYSIZE_ARRAY]
#define RtlCopyMemory(Destination, Source, Length)
VOID WINAPI SwitchToThisWindow(HWND hwnd, BOOL fAltTab)
#define BATTERY_FLAG_CHARGING
#define BATTERY_LIFE_UNKNOWN
DWORD WINAPI GetLastError(void)
#define BATTERY_FLAG_CRITICAL
BOOL WINAPI IsWindow(_In_opt_ HWND)
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
BOOL WINAPI SetWindowPos(_In_ HWND, _In_opt_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ UINT)
#define DialogBoxW(i, t, p, f)
BOOL WINAPI SetDlgItemTextW(_In_ HWND, _In_ int, _In_ LPCWSTR)
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
LRESULT WINAPI SendDlgItemMessageW(_In_ HWND, _In_ int, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
HWND WINAPI GetDesktopWindow(void)
BOOL WINAPI SetWindowTextW(_In_ HWND, _In_opt_ LPCWSTR)
UINT WINAPI IsDlgButtonChecked(_In_ HWND, _In_ int)
BOOL WINAPI SetDlgItemTextA(_In_ HWND, _In_ int, _In_ LPCSTR)
HWND WINAPI GetParent(_In_ HWND)
BOOL WINAPI GetMonitorInfoW(_In_ HMONITOR, _Inout_ LPMONITORINFO)
#define MAKEINTRESOURCEW(i)
HICON WINAPI LoadIconW(_In_opt_ HINSTANCE hInstance, _In_ LPCWSTR lpIconName)
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)