Captura de pantalla de la ventana
-
05-07-2019 - |
Pregunta
Estoy intentando tomar capturas de pantalla de todas las ventanas abiertas, también las minimizadas. Actualmente estoy usando este código: http://www.developerfusion.com/code/4630/capture -a-captura de pantalla /
Pero no funciona para ventanas minimizadas y las áreas donde hay un efecto Glass ya que Vista como la barra de título del explorador son negras. ¿Alguien puede ayudarme?
Mi objetivo es crear algo similar a Flip 3D; sería genial si alguien también supiera algo sobre cómo crear una vista previa en vivo.
Solución 2
Encontré la API que se usa para las vistas previas de la barra de tareas a.s.o .:
Descripción general de miniaturas DWM
Bastante impresionante, ¡incluso te permite hacer vistas previas en vivo!
Otros consejos
Para las áreas de efecto de vidrio: creo que no funciona porque esas áreas pueden dibujarse con algún método extraño de DirectX en lugar de GDI normal.
Para el problema de ventanas minimizadas: si una ventana está minimizada, su DC no está pintada (conceptualmente, ni siquiera tiene una razón para existir); debe intentar enviar a tales ventanas un mensaje WM_PRINT, pidiéndoles que se pinten en el DC que les proporcionará. El problema con este enfoque es que no todas las ventanas se manejan correctamente WM_PRINT.