![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| Bodro |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 92 Регистрация: 27.1.2006 Где: Россия, г. Рязань Репутация: нет Всего: 4 |
Пишу на Win32 API в блокноте и компиляю с помощью Borland C/C++ 5.0. старый, но надёжный компилятор.
Вопрос такой. Точнее их три. 1. Как сделать именно скринсейвер (name.scr)? В Delphi это делается с помощью директивы {$E scr}. А как в Си? Чтобы не переименовывать exe-шник. 2. Как сделать менюшку. Чтобы когда указываешь свойства экрана, выбираешь заставку и нажимаешь кнопку <Настроить>. Чтобы менюшка настроек появлялась. 3. Как сделать, чтобы в меленьком окошке потихоньку отображался он. А то у меня сразу на весь экран разворачивается. Спасибо! |
|||
|
||||
| Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 8 Всего: 18 |
MSDN->User Interface Designe ->Windows Shell -> Advanced Shell Techniques->Handling Screeensavers
|
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: нет Всего: 484 |
Лови параметры коммандной строки.
2. если первый параметр -с или /с, то показывай окно настроек. 3. если второй параметр -p или /p, то показывай превью. В третьем параметре получишь HWND окна превью. Выводи в него. |
|||
|
||||
| Bodro |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 92 Регистрация: 27.1.2006 Где: Россия, г. Рязань Репутация: нет Всего: 4 |
Я просто восхищён!!! Не ожидал, если честно, такого скорого, точного и понятного ответа!!!
Спасибо большое! Вы - лучшие! ;) Я так понял, если без параметров, значит винда запустила скринсейвер уже для нормальной ("скринсейверной") работы. Т.е. если параметров нет - отображать на весь экран. Так? А на счёт первого вопроса, я так понял, Borland C/C++ 5.0 или Borland C/C++ 5.5 не умеют сразу компилять в scr. Значит, придётся переименовать exe-шник. Да, вообще-то глупый был вопрос... Прошу прощения. А в чём вообще разница scr и exe? Поковырялся я в скринсейверах и ничего такого не нашёл. По структуре - обычный exe-шник. Что, просто для различия их переименовывают? Зачем вообще Microsoft так устроила? Ведь, как я понял, scr и exe - одно лицо! Спасибо! Это сообщение отредактировал(а) Bodro - 28.1.2006, 07:03 |
|||
|
||||
| Fin |
|
|||
![]() Дракон->Спать(); ![]() ![]() Профиль Группа: Участник Сообщений: 687 Регистрация: 4.1.2006 Репутация: 1 Всего: 10 |
Это один и тот же бублик, только вид сверху. Зачем мелкомягким придумывать свой стандарт для скринсервера, когда стандарт для Exe файлов полностью подходит для решения данной задачи. Скорее всего расширение решили изменять потому что, все скринсерверы свалены в одну папку, в которой могут находится другие программы. Чтобы как то различать, что есть что.
-------------------- Пролетал мимо. |
|||
|
||||
| Bodro |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 92 Регистрация: 27.1.2006 Где: Россия, г. Рязань Репутация: нет Всего: 4 |
Зачем же тогда в Delphi предусмотрена директива {$E scr}?
|
|||
|
||||
| Fin |
|
|||
![]() Дракон->Спать(); ![]() ![]() Профиль Группа: Участник Сообщений: 687 Регистрация: 4.1.2006 Репутация: 1 Всего: 10 |
В свое время я писал на Дельфи скринсервер и без этой опции. Все прекрасно работало. Только переименовывал расширение. Скорее всего это дополнительная фича.
-------------------- Пролетал мимо. |
|||
|
||||
| Bodro |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 92 Регистрация: 27.1.2006 Где: Россия, г. Рязань Репутация: нет Всего: 4 |
Да, я тоже писал без этой директивы. И с этой писал. Разницы - никакой!
Только в одном случае получается *.exe, а в другом *.scr. А по суди - одно и то же! Спасибо большое всем! Тему можно закрывать! Это сообщение отредактировал(а) Bodro - 4.2.2006, 01:07 |
|||
|
||||
| MoZy |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 193 Регистрация: 4.6.2006 Репутация: 1 Всего: 0 |
Может отличие в том, что если юзать всякие там ScreenSaverProc() вместо стандартного окнного, то ехе шник вообще не запустится, пока в scr не переименуешь.
--------------------
Experimentia est optima rerum magistra |
|||
|
||||
| 586 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2243 Регистрация: 8.5.2006 Репутация: 39 Всего: 146 |
Эта директива просто меняет расширение файла.
{$E txt} |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |