//********************************************************************** // Check if hibernation is allowed //********************************************************************* function HibernateAllowed: Boolean;
type
TIsPwrHibernateAllowed = function: Boolean;
stdcall;
var
hPowrprof: HMODULE;
IsPwrHibernateAllowed: TIsPwrHibernateAllowed;
begin
Result := False;
if IsNT4Or95 then Exit;
hPowrprof := LoadLibrary("powrprof.dll");
if hPowrprof <> 0 thenbegintry
@IsPwrHibernateAllowed := GetProcAddress(hPowrprof, "IsPwrHibernateAllowed");
if @IsPwrHibernateAllowed <> nilthenbegin
Result := IsPwrHibernateAllowed;
end;
finally
FreeLibrary(hPowrprof);
end;
end;
end;
//********************************************************************** // Check if suspend is allowed //********************************************************************** function SuspendAllowed: Boolean;
type
TIsPwrSuspendAllowed = function: Boolean;
stdcall;
var
hPowrprof: HMODULE;
IsPwrSuspendAllowed: TIsPwrSuspendAllowed;
begin
Result := False;
hPowrprof := LoadLibrary("powrprof.dll");
if hPowrprof <> 0 thenbegintry
@IsPwrSuspendAllowed := GetProcAddress(hPowrprof, "IsPwrSuspendAllowed");
if @IsPwrSuspendAllowed <> nilthenbegin
Result := IsPwrSuspendAllowed;
end;
finally
FreeLibrary(hPowrprof);
end;
end;
end;
Если Вас заинтересовала или понравилась информация по разработке на Delph - "Узнать, поддерживает ли компьютер состояния ожидания и сна", Вы можете поставить закладку в социальной сети или в своём блоге на данную страницу: Так же Вы можете задать вопрос по работе этого модуля или примера через форму обратной связи, в сообщение обязательно указывайте название или ссылку на статью!