Вопрос

Я пытаюсь сделать скриншоты всех открытых окон, в том числе свернутых. В настоящее время я использую этот код: http://www.developerfusion.com/code/4630/capture -a-скриншот /

Но это не работает для свернутых окон и областей, где присутствует эффект «Стекло», поскольку Vista, такая как строка заголовка проводника, черная. Кто-нибудь может мне помочь?

Моя цель - создать что-то похожее на Flip 3D; было бы замечательно, если бы кто-то также знал о том, как создать живой предварительный просмотр.

Это было полезно?

Решение 2

Я нашел API, который используется для предварительного просмотра панели задач a.s.o.

Обзор миниатюр DWM

Довольно круто, он даже позволяет делать живые превью!

Другие советы

Для областей со стеклянным эффектом: я думаю, что это не работает, потому что эти области могут быть нарисованы каким-то странным методом DirectX вместо обычного GDI.

Для проблемы свернутых окон: если окно свернуто, его DC не окрашивается (концептуально, у него даже нет причин для существования); Вы должны попытаться отправить в такие окна сообщение WM_PRINT с просьбой нарисовать себя на DC, который вы им предоставите. Проблема с этим подходом состоит в том, что не все окна обрабатывают правильно WM_PRINT.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top