Перехватывать рендеринг и взаимодействие рабочего стола

0

Возможно ли, без изменения ОС Windows, иметь часть программного обеспечения, перехватывающего рендеринг рабочего стола, и изменить его до его отображения? Например, если бы я хотел перехватить его и применить эффект "рыбий глаз" на весь экран, возможно ли это?

Если да, то как мне это сделать? (Не волнуйтесь об эффектах, это был всего лишь пример, мне просто нужна сторона перехвата вещей)

Кроме того, мне нужно иметь возможность перехватывать щелчки мыши и изменять их позицию до того, как Windows ответит на ввод.

Если у кого есть ссылки на это или подобные проекты на С# или C++, это также будет очень полезно.

Теги:
opengl
directx

1 ответ

0
Лучший ответ

Да, возможно. Например, проигрыватель WinAmp делает это. Однако этот код очень нестабилен, поэтому будьте готовы к перезагрузке, если вы попробуете его.

  • 0
    Не могли бы вы передать мне пример такого кода или методов? Я не могу найти много с моими поисками.
  • 0
    Например, я уже упоминал WinAmp (и это бесплатное программное обеспечение). Я не знаю, является ли код общедоступным. Но фон рабочего стола - это просто окно, которое может быть разделено на подклассы. Я думаю, что используется подклассификация, потому что я думаю, что я помню, что все компоненты «активного рабочего стола», основанные на COM, были удалены в Vista или когда-либо. По-видимому , просто проверяя сейчас Spy ++, это окно процесса Explorer класса SHELLDLL_DefView, являющееся дочерним по отношению к какому-либо другому окну Explorer, которое, в свою очередь, находится поверх системного окна не-Explorer. Внедрить код в Проводник легко, расширение оболочки.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню