Cómo capturar contenidos de ventanas de una aplicación de la Tienda Windows en C #

Tengo un poco de código para capturar el contenido de la aplicación de escritorio de Windows y guardarlo en un objeto de mapa de bits en .NET. Utiliza User32.dll y Gdi32.dll (BitBlt) y funciona bien. Sin embargo, el código produce mapas de bits completamente negros cuando le doy un código a una ventana que contiene una aplicación de la Tienda Windows. No estoy seguro de si esta es una característica de seguridad o qué. No puedo usar la API ScreenCapture ya que el contenido de la ventana, después de cambiar su tamaño, casi siempre es más alto / más grande que la pantalla. ¿Alguien ha tenido suerte capturando el contenido de la ventana, incluso cuando son más grandes que la pantalla, para una aplicación de la Tienda Windows?

EDITAR: Solo como una nota, estoy tratando de capturar una ventana de programa diferente, no mi propio programa. Se puede suponer que mi programa es una aplicación de consola de Windows en .NET 4.6.1 / C #

Además, sé que esto debe ser posible de alguna manera en las API de Windows, porque la función Aero Peek, donde si pasa el mouse sobre la barra de tareas en el icono del programa en ejecución, muestra la altura completa de la ventana, incluidos los componentes fuera de la pantalla. (vea la ventana alta a la derecha, configurada a 6000px mucho más alta que mi pantalla)

Respuestas a la pregunta(2)

Su respuesta a la pregunta