Снимок экрана частично скрытого окна программным способом - PullRequest
3 голосов
/ 12 августа 2011

Можно ли получить снимок экрана с окном, которое не находится сверху, т.е. если оно частично скрыто другим окном, не поднимая его вверх?

Ответы [ 2 ]

1 голос
/ 12 августа 2011

Вам не нужно делать скриншот, если это ваше приложение, вы можете использовать Control.DrawToBitmap(Bitmap bitmap, Rectangle targetBounds); объекта формы.

Если это другое окно приложения, вы можете попробовать неуправляемый способ получить UI окна.Я не помню все методы, но я попробовал, и это работало.Возможно GetWindow и SendMesage с WM_PRINT / WM_PRINTCLIENT

1 голос
/ 12 августа 2011

К сожалению, снимать снимок экрана в C # совсем не просто, вы можете создать графический объект на основе текущего окна или окна просмотра и захватить его, но это не то, что вы просите.

Это

Снимок экрана скрытого окна

может помочь, но вам все равно придется делать это с кодом Interop.

Осмелюсь сказать, что это не обычная вещь, которая поддерживается на самом деле, одна программа не имеет никакого дела, зная, что отображается в другой программе; это потенциально противный подвиг.

...