Как перевести компьютер в Stend-by или Hibernate?

Previous  Top  Next

    
 

 

 

Code:

{

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;

 

©Drkb::01700

Взято с сайта http://www.swissdelphicenter.ch/en/tipsindex.php

 

 


 

Code:

procedure TForm1.Button1Click(Sender: TObject);

begin

  SendMessage(Handle, WM_SYSCOMMAND, SC_SCREENSAVE, 1);

end

©Drkb::01701

Взято с сайта: http://www.swissdelphicenter.ch