Я хочу создать менеджер рабочего стола, который будет получать информацию обо всех запущенных приложениях, включая состояния и снимки экрана, для отображения и управления ими в моем виртуальном пространстве (возможно, в 3D). Это можно рассматривать как еще один уровень абстракции поверх самой Windows.
Поскольку многие встроенные функции Windows Vista / 7, такие как Flip 3D и Live Thumbnails, могут отображать действия каждого окна в режиме реального времени, например, видео продолжает воспроизводиться на миниатюре панели задач, я думаю, что DWM позволяет приложению перенаправлять свои выходные данные куда-либо, или некоторые специальные процессы могут собирать графические выходные данные других приложений (возможно, только дочерних процессов). Microsoft выпустила набор открытых API для этого? Если нет, возможно ли это технически? И будет ли легче, если я ограничу свои возможности только приложениями .NET с WPF?