Как я могу написать заставку для Windows на C ++? - PullRequest
4 голосов
/ 02 марта 2011

Я хочу написать заставку для Windows, используя Windows API.Как я могу начать писать это?

Ответы [ 2 ]

16 голосов
/ 02 марта 2011

По сути, скринсейвер - это обычное приложение, которое принимает несколько параметров командной строки, предоставляемых окнами, чтобы определить, должен ли он запускаться в полноэкранном режиме или в окне предварительного просмотра.

Итак, напишите обычное exe-приложение, которое принимает следующие аргументы командной строки (от http://msdn.microsoft.com/en-us/library/ms686421(v=vs.85).aspx):

  • / s - Запустить заставку в полноэкранном режиме.
  • / c - Показать диалоговое окно настроек конфигурации.
  • / p #### - Показать предварительный просмотр заставки, используя указанный дескриптор окна.

Затем ознакомьтесь с некоторыми учебными пособиями по DirectX / OpenGL / SDL и напишите немного конфет.

Очевидно, что вы должны проверять движения мыши и нажатия клавиш и выходить из приложения, если пользователь просыпается.

3 голосов
/ 19 марта 2011

Удачи в вашем поиске.

Лучше, если вы сможете найти реальный код заставки вместо того, чтобы что-то взломать. Таким образом, вы можете работать с заставкой быстрее.

Заставки - это больше, чем просто модифицированные файлы. Хотите поддержку двух мониторов? Как бы вы это сделали? Оба экрана как один большой экран или оба экрана как отдельные экраны?

Opengl работает немного иначе, и есть другие проблемы.

У Microsoft был демонстрационный код для заставок opengl и directx, если вы хотите, я могу найти имена, потому что у меня может быть код где-то на моем компьютере. Может сделать ваш поиск проще с некоторыми именами проектов.

...