Windows - detectar se o screen saver esta ativo

Top  Previous  Next

// Primeiro verifique se o protetor de tela está em execução 

 

 

Function IsScreensaverRunning: Boolean; 

var 

  old: Bool; 

begin 

  SystemParametersInfo( SPI_SCREENSAVERRUNNING, 0, @old, 0 ); 

  Result := old; 

  If old Then 

    SystemParametersInfo( SPI_SCREENSAVERRUNNING, 1, @old, 0 ); 

end

 

 

// Se estiver em execução simule o pressionamento de uma tecla 

keybd_event( VK_SPACE, MapVirtualkey( VK_SPACE, 0 ), 00); 

keybd_event( VK_SPACE, MapVirtualkey( VK_SPACE, 0 ), KEYEVENTF_KEYUP, 0);