Форум: "WinAPI";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
ВнизЭкранная заставка Найти похожие ветки
← →
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):
» Юрий Зотов:» Поправка: тип результата BOOL, а не boolean.
function IsScreenSaverRunning: boolean;
begin
SystemParametersInfo(SPI_GETSCREENSAVERRUNNING, 0, @Result, 0)
end;
← →
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 вся ветка
Форум: "WinAPI";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c