#c #winapi
#c #winapi
Вопрос:
Я пытаюсь захватить весь рабочий стол с помощью BitBlt
, и я также хочу исключить определенные окна (моего собственного приложения) из захвата. Я могу установить для них WS_EX_LAYERED
атрибут, но это не будет работать в Window 7 с включенной композицией рабочего стола. Показывать и скрывать окно нельзя, поскольку это приводит к мерцанию.
Комментарии:
1. Он устарел (т. Е. может не работать в будущих версиях Windows), но вы можете использовать пользовательское преобразование изображения в сочетании со списком фильтров окон . (Преобразование изображения просто копирует биты куда-то еще для сохранности.)
2. @Raymond: Мне это кажется достойным ответа, а не комментария. Я бы поддержал это.
3. Я не знаю, сработает ли это, но это просто и, возможно, стоит попробовать. Обработайте сообщение WM_PRINT, но ничего не рисуйте, также не передавайте сообщение в DefWindowProc.