Delphirus - прграммирование на delphi
   Все о delphi Delphirus - прграммирование на delphi
blocks.gif
Навигация
 

Главная
Статьи
Базы данных
Графика
Защита
Интернет
Система
Тексты
Мультимедиа
Файлы
Формы и окна
Другое
Советы
Базы данных
Графика
Интернет
Мультимедиа
Система
Тексты
Файлы
Файлы
Исходники
Компоненты
Инфо
Поиск по сайту
Обратная связь
Самое популярное
Аккаунт
Карта сайта

 
 
 

Советы по delphi \ Система \ Компьютер \ Перевод системы в режим ожидания или спячки

Перевод системы в режим ожидания или спячки

{ 
  The SetSuspendState function suspends the system by shutting power down. 
  Depending on the Hibernate parameter, 
  the system either enters a suspend (sleep) state or hibernation. 

  Syntax: 
}

  function SetSuspendState(
    Hibernate: Boolean,
    ForceCritical: Boolean,
    DisableWakeEvent: Boolean);


 {  Parameters: 

   Hibernate: If this parameter is TRUE, the system hibernates. 
              If the parameter is FALSE, the system is suspended. 
   ForceCritical: If this parameter is TRUE, the system suspends operation immediately; 
                  if it is FALSE, the system broadcasts a PBT_APMQUERYSUSPEND event to 
                  each application to request permission to suspend operation. 
   DisableWakeEvent: If this parameter is TRUE, the system disables all wake events. 
                     If the parameter is FALSE, any system wake events remain enabled. 


  Windows NT/2000/XP: Included in Windows 2000 and later. 
  Windows 95/98/Me: Included in Windows 98 and later. 
}

 var
   _SetSuspendState: function (Hibernate, ForceCritical, DisableWakeEvent: BOOL): BOOL
   stdcall = nil;

   function LinkAPI(const module, functionname: string): Pointer; forward;

 function SetSuspendState(Hibernate, ForceCritical,
   DisableWakeEvent: Boolean): Boolean;
 begin
   if not Assigned(_SetSuspendState) then
     @_SetSuspendState := LinkAPI('POWRPROF.dll', 'SetSuspendState');
   if Assigned(_SetSuspendState) then
     Result := _SetSuspendState(Hibernate, ForceCritical,
       DisableWakeEvent)
   else
     Result := False;
 end;

 function LinkAPI(const module, functionname: string): Pointer;
 var
   hLib: HMODULE;
 begin
   hLib := GetModulehandle(PChar(module));
   if hLib = 0 then
     hLib := LoadLibrary(PChar(module));
   if hLib <> 0 then
     Result := getProcAddress(hLib, PChar(functionname))
   else
     Result := nil;
 end;

 // Example Call: 
// Beispielaufruf: 

procedure TForm1.Button1Click(Sender: TObject);
 begin
   SetSuspendState(True, False, False);
 end;

Название: Перевод системы в режим ожидания или спячки
Дата публикации: 2004-06-17 (2709 Прочтено)

 
 

 

Page generation 0.037 seconds