Вниз
Скачать: CL | DM;

ScreenShot   Найти похожие ветки 

← →
DeadMeat ©   (2004-08-10 18:38) [0]

Здрассте всем!
Нет это не вопрос про то, как снять скриншот с рабочего стола. Нет это вопрос про то, как снять скриншот с какого-либо окна. Все бы ничего, но сложность заключается в том, что это окно может перекрываться другим окном и при этом его изображение затирается.
Так вот вопрос - как получить изображение окна, даже если оно перекрыто другим окном?


← →
GuAV ©   (2004-08-10 19:21) [1]

А чем бы его не поставить поверх перед созданием скриншота. а после - вернуть на место...


← →
DeadMeat ©   (2004-08-10 19:30) [2]

Будет выглядеть немного странно, если через каждые, скажем 5 сек. список окон в системе будет переставляться...
У меня вот какая мысля родилась, мож подменить оконную процедуру, заставить отрисовать окно в мой битмап, а потом вернуть на место?
Что скажете? Просто проверять щас негде...


← →
wicked ©   (2004-08-10 20:22) [3]

возможные альтернативы:
1. WM_PRINT....
2. WM_PAINT + WParam = HDC...

еще вариант - почитать на сайте Фень-Юаня (того самого) - http://www.fengyuan.com/article/wmprint.html


← →
DeadMeat ©   (2004-08-10 22:02) [4]


> [3] wicked ©   (10.08.04 20:22)

Спасиба... Почитал, перевел, проверил. Работает только со своим окном... Для чужого понадобилось внедрять *.DLL-ку.
Неужели нет других способов... без внедрения.
Просто для меня критична скорость снятия скриншота. Думал может можно способом типа BitBlt, но только своей процедуркой...
Никто так не делал?

---
...Death Is Only The Begining...


← →
Sapersky   (2004-09-01 12:34) [5]

В WinXP есть некая ф-я PrintWindow (наверное, в GDI+).
Нашёл ещё реализацию с написанием своего драйвера, должна работать в Win2000:
http://www.aqua-soft.org/index.php/developers
http://expire.free.fr/board/index.php?showtopic=109


← →
DeadMeat ©   (2004-09-01 17:50) [6]

Крута!
Но там аж целый драйвер с собой таскать надо...
Я все же оставил вариант с внедрением... Но правда скорость тратится на само внедрение, но можно все сразу внедрить во все GUI процессы и вызывать уже оттуда...

---
...Death Is Only The Begining...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.028 c
10-1044343249
JibSkeart
2003-02-04 10:20
2004.10.10
приммеры COM DCOM на Bulder C++


1-1096274244
DelphiLexx
2004-09-27 12:37
2004.10.10
Форма поверх всех окон


6-1091184051
Гость
2004-07-30 14:40
2004.10.10
WEBBROWSEr1


3-1094975672
limon_
2004-09-12 11:54
2004.10.10
Index


1-1096119596
Leaner
2004-09-25 17:39
2004.10.10
Отключение Exception: Stream.LoadFromFile(FileName);




   Наверх