Вниз
Скачать: CL | DM;

Экранная заставка   Найти похожие ветки 

 
ElectriC ©   (2007-08-29 15:47) [0]

Как проверить, программно, включена ли экранная заставка?


 
ElectriC ©   (2007-08-29 16:19) [1]

А всё разобрался! Ветку можно закрыть.


 
Denis_ ©   (2007-08-29 17:02) [2]

Удалено модератором
Примечание: Оффтоп...


 
TStas ©   (2007-08-29 23:22) [3]

Ну раз разобрались, то напишите, мне интересно стало.


 
Юрий Зотов ©   (2007-08-30 07:57) [4]

Кроме старых версий (NT и 95):

function IsScreenSaverRunning: boolean;
begin
 SystemParametersInfo(SPI_GETSCREENSAVERRUNNING, 0, @Result, 0)
end;
» Юрий Зотов:» Поправка: тип результата BOOL, а не boolean.


 
ElectriC ©   (2007-08-31 15:58) [5]

Чет я не совсем пойму.
Запускаю заставку так: PostMessage(GetDesktopWindow, WM_SYSCOMMAND, SC_SCREENSAVE, 0);
Останавливаю заставку (кликаю или двигаю курсором мыши).
Затем проверяю:
function ScreenSaver : Boolean;
var Status : Bool;
begin
 SystemParametersInfo(SPI_GETSCREENSAVEACTIVE, 0, @Status, 0);
 Result := Status = True;
end;
Функция ScreenSaver говорит, что заставка отключена. Смотрю в настройки
экранной заставка, заставка включена(т.б. допустим у меня установлена "Объёмный текст"). Пытаюсь запустить программно - ничего не выходит.
Вопрос решается, когда заново выбрать заставку и нажать OK.
Не подскажите в чём дело?


 
Юрий Зотов ©   (2007-08-31 16:19) [6]

Проверьте, что в коде именно SPI_GETSCREENSAVEACTIVE, а не SPI_SETSCREENSAVEACTIVE


 
ElectriC ©   (2007-08-31 17:43) [7]

Проверил! В коде SPI_GETSCREENSAVEACTIVE. Всё равно тоже [5].



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
2-1207834516
bagos
2008-04-10 17:35
2008.05.11
выход из зацикливания


2-1207907891
Снежинка
2008-04-11 13:58
2008.05.11
Вывод времени


15-1206469858
кодировки
2008-03-25 21:30
2008.05.11
отличие ASCIIZ от ASCII


15-1206673504
borisich
2008-03-28 06:05
2008.05.11
нужно ли идти в армию...


3-1196934351
MZ
2007-12-06 12:45
2008.05.11
Узнать права роли на объект




   Наверх