Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.10.16;
Скачать: [xml.tar.bz2];

Вниз

Хранитель экрана: запуск и выход   Найти похожие ветки 

 
dataMaster   (2003-08-01 15:24) [0]

Всем привет! Кто-нибудь знает, как из своей программы можно определить, что Windows запустила (или пытается запустить) ScreenSaver, а также, что ScreenSaver завершил свою работу?


 
Игорь Шевченко   (2003-08-01 15:41) [1]

В win2k/winXp через gina.dll неплохой способ. Описан вроде на rsdn.

В Win98 можно попробовать узнать через SystemParametersInfo (SPI_SCREENSAVERRUNNING, ...)




 
dataMaster   (2003-08-01 16:52) [2]

Делаю так:

var
SaverActive:boolean;
begin
repeat
Application.ProcessMessages;
( SPI_SCREENSAVERRUNNING, 0, @SaverActive, 0)
Делаю так:

var
SaverActive:boolean;
begin
repeat
Application.ProcessMessages;
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 0, @SaverActive, 0);
until SaverActive=True;
Halt;
end;


и цикл не завершается, даже если хранитель экрана запустился... Может что не так сделал?


 
Echelon   (2003-08-01 18:03) [3]

Конечно не так, если не ошибаюсь нужно писать SPI_GETSCREENSAVEACTIVE, а SPI_SCREENSAVERRUNNING
используется для того чтобы активировать этот режим.
Посмотри SDK.


 
Pindos   (2003-08-02 01:25) [4]

SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, nil, 0); - В 98 Windows"е отключает нажатие Ctrl+Alt+Del, At+Tab, Alt+Esc...

SystemParametersInfo(SPI_SCREENSAVERRUNNING, 0, nil, 0); - включает нажатие вышеуказанных сочетаний!!!

А как про заставку узнать я не знаю
PindosInc®


 
Yanis   (2003-08-02 02:34) [5]

Да уж. :))

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


 
dataMaster   (2003-08-04 09:52) [6]

2Echelon © (01.08.03 18:03)
SPI_GETSCREENSAVEACTIVE тоже не помог...

2Pindos © (02.08.03 01:25)
Кнопки мне не нужны :-)

2Yanis © (02.08.03 02:34)
Это немножко не то ;-)



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

Форум: "Система";
Текущий архив: 2003.10.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.012 c
14-51442
race1
2003-09-28 06:09
2003.10.16
happy tree friends


3-51149
rosl
2003-09-24 11:51
2003.10.16
fasreport


14-51461
Igorek
2003-09-27 23:59
2003.10.16
Дежурство в чате


14-51492
XobBIT
2003-09-27 15:07
2003.10.16
Математики подскажите ряд для вычисления arccos(x)


1-51234
Буфер обмена
2003-10-03 14:32
2003.10.16
Clipboard.AsText - белеберда получается





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский