Как запустить текущий ScreenSaver

Материал из DRKB

Как запустить текущий ScreenSaver[править | править код]

SendMessage(Application.Handle, WM_SYSCOMMAND, SC_SCREENSAVE, 0);


Source: Взято с http://delphiworld.narod.ru
ID: 02378



Сначала мы проверяем, установлен ли Screen Saver, если нет - возвращаемся с отрицательным ответом, в противном случае - запускаем его и возвращаем true.

function RunScreenSaver: bool;
var
  b: Boolean;
begin
  Result := False;
  if not SystemParametersInfo(SPI_GETSCREENSAVEACTIVE, 0, @b, 0) then
    exit;
  if not b then
    exit;
  PostMessage(GetDesktopWindow, WM_SYSCOMMAND, SC_SCREENSAVE, 0);
  Result := True;
end;


Source: http://delphiworld.narod.ru/
ID: 02379