Forum

Пожалуйста or Регистрация для создания сообщений и тем.

Оверлей для любого окна

Всем привет!
Необходима реализация Оверлея на C#.

Основное окно, например, будет блокнот, а исполняемый файл, который будет работать, как оверлей, например, пустая форма.
Необходимо, чтобы форма всегда была пропорциональна блокноту по центру, передвинул блокнот и форма в месте с блокнотом.
Также, чтобы форма не выходила за пределы самого блокнота.
Т.е. мы привязались к блокноту, отобразили по средине блокнота форму, если передвинули блокнот форма тут же передвинулась вместе с ним, если начали водить форму, она не выходит за рамки самого блокнота, размеры у блокнота могут быть динамические.
Скриншот.

Привет 🖐
Пожалуйста, не дублируй темы. Готовое рабочее решение ➜ https://stackoverflow.com/a/31834112

А вот мне бы было интересно, есть ли на C# реализация оверлея для полноэкранного монопольного режима, как это делает Steam, Discord или тот же FPS Monitor и т.д.? Что бы выводить что-то примитивное, просто текст, например.
Понятно, что для этого нужен нативный драйвер (который точно на C# не пишется), но враппер для какой нибудь готовой библиотеки было бы интересно посмотреть.

Привет 🖐
Для C# есть библиотека на GitHub с враппером над DirectX.

Цитата: Dapofig от 09.08.2022, 13:10

Привет 🖐
Для C# есть библиотека на GitHub с враппером над DirectX.

Приветствую. За нее я знаю. Есть еще пару других, но я не нашел, что бы они умели выводить изображение поверх монопольного фулскрина.
Полный экран бывает двух видов, или точнее даже трех. Бывает полноэкранное окно (отображается на весь экран, но по сути не является полноценно полноэкранным, а просто окно растянутое до размеров экрана), потом промежуточный, когда экран полный (уже не окно, но и не монопольное) и третий, чаще всего встречающийся в современных играх, это монопольный полный экран, когда приложение полностью монополизирует экран, но те же Steam, Discord и т.д. через свой хук-драйвер умеют выводить оверлей поверх него.
Может я конечно что-то не так понимаю, но на эту тему как-то не нашел нормальной инфы почитать, что и как это работает.

Удаленный пользователь отреагировал на эту запись.
Удаленный пользователь