вот так получаю время последнего Sleep
var
lt : ULONGLONG;
begin
if CallNtPowerInformation(15, nil, 0, @lt, SizeOf(lt)) = STATUS_SUCCESS then
LastSleepTime := IncMilliSecond(now , — (lt div 10000));
Цитата
LastSleepTime = 15
The lpInBuffer parameter must be NULL; otherwise, the function returns ERROR_INVALID_PARAMETER.
The lpOutputBuffer buffer receives a ULONGLONG that specifies the interrupt-time count, in 100-nanosecond units, at the last system sleep time.
Windows 2000: This value is not supported.
но каждый раз возвращает одно и тоже
а именно 160572965132