Как установить видео в качестве обоев

Я разрабатываю приложение с использованием MFC. Можно ли установить видео в качестве обоев за значками рабочего стола?

Спасибо.

Анам Г


person user802099    schedule 07.09.2011    source источник


Ответы (2)


Да, вы можете с DirectX, я верю. Я никогда не пытался сделать что-то подобное, поэтому я не могу сказать вам, с чего начать. Я могу сказать вам, что VLC Media Player делает это как показано здесь. VLC имеет открытый исходный код, поэтому, если вы любите приключения, вы можете погрузиться в их исходный код, чтобы увидеть, как они это делают.

person Dave Rager    schedule 07.09.2011
comment
Я просмотрел исходный код VLC. Он использует Direct X., но чтобы установить окно видео за значком рабочего стола, он вынимает верхний дескриптор окна рабочего стола и устанавливает их окно как дочернее окно. Но в Win 7 не работает. В Win XP работает. - person user802099; 08.09.2011
comment
Это то, что я думал, что это может быть сделано. Он должен работать с Windows 7 с базовой темой рабочего стола. т.е. это не похоже, что он работает с рабочим столом Aero. Как я уже сказал, я никогда не пробовал, поэтому я не могу быть более конкретным. Тем не менее, похоже, что это может быть интересный эксперимент для этих выходных. :-) - person Dave Rager; 08.09.2011

Краткий ответ: нет, официального способа сделать это нет.

Более подробный ответ: в версиях Windows до Vista было что-то под названием «активный рабочий стол». При этом вы можете установить практически что угодно в качестве фона рабочего стола. Однако он постепенно прекращается и больше не является реальным вариантом для того, чтобы делать то, что вы хотите. Единственный способ заставить его работать — это хакерство, подобное тому, что делает vlc — получить дескриптор окна рабочего стола и делать с ним неприятные вещи. Последние версии Windows имеют лучшую защиту от такого дурачества; вероятно, есть способы обойти эту защиту, но тогда вы окажетесь в гонке вооружений с разработчиками Windows. Таким образом, даже в версии с нюансами ответ остается «нет, нет надежного и поддерживаемого способа сделать это, и поэтому вам не следует этого делать». Любое приложение, которое делает, должно быть и часто (и справедливо) классифицируется как мошенническое программное обеспечение или вредоносное ПО.

person Roel    schedule 15.09.2011