![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как сделать PreView заставки на OpenGL? [D6, WinXP]
Vemer © (2008-03-05 00:51:00)Добрый день.
Написал ScreenSaver средствами WinAPI и OpenGL.
Сама хранилка работает, но не могу заставить работать ее в режиме PreView в меню выбора заставок.
Может у кого есть готовый кусок кода или объясните примерно, что там нужно сделать?
soi.hash (2008-03-11 06:19:00) [1]
> МистерТ (07.03.08 13:02) [4]
Ну это не проблема для нас тебе не кажется :-)
МистерТ (2008-03-07 13:02:00) [2]> soi.hash (07.03.08 08:58) [3]
Идея не сработает потому, что ключи могут быть разными:
например старт превью - /p или /l и где гарантия, что у одного на компе не будет выдаваться _только_ /р, а у другого _только_ /l ?
soi.hash (2008-03-07 08:58:00) [3]
> МистерТ (05.03.08 08:27) [2]
Идея в том, что не как это украдено, а как ты это можешь сделать
МистерТ (2008-03-05 08:27:00) [4]> soi.hash (05.03.08 07:46) [1]
Вообще-то "все уже украдено до Вас", в смысле все ключи давно известны.
> Vemer © (05.03.08 00:51)
Сходите на сайт NeHe - там огромное множество примеров скринсейверов...в основном на С++, но есть примеры и на делфи.
Из основного - можно выделить следующее:
а) программа должна уметь запускаться в полноэкранном режиме и прекращать свою работу при движении мыши или нажатии любой кнопки на клавиатуре и/ил мыши при запуске с ключем /s
б) программа должна уметь отрисовывать превью на контексте чужого окна (и следить за тем, что окно будет уничтожено системой, как следствие завершить свою работу при уничтожении окна) при запуске с ключем /p #### или /l ####, где #### - HWND окна для отрисовки.
в) программа должна выводить диалог настройки если запущена без ключей запуска, или с ключами /c или /c ####, где #### - HWND родительского окна диалога. Если /с без параметра HWND - то родитель для диалога должен быть получен через GetForegroundWindow().
есть еще ключ /a ####, но
1. Он вызывается только в Win95
2. Этот ключ должен вызывать диалог ввода пароля.
поэтому обрабатывать его в скринсейвере не стоит, начиная с Win98 система сама выводит этот диалог.
soi.hash (2008-03-05 07:46:00) [5]Попробуй сделать следующее напиши децельную прогу которая к примеру в MEMO выводит все параметры с которыми запус кается твоя прога.
Далее переименуй свою прогу Пример:Screen.exe -> Screen.scr.
Щёлкни правой выбери Установить, откроется окно свойства Экранаи за пустится твоя прога. Затем закрой её и ннажимай там все клавиши для узнавания какие параметры использует Windowsдля зауска и всё.