Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "WinAPI";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.032 c
14-1095664299
Holy
2004-09-20 11:11
2004.10.10
Наладонники


1-1095697930
Slaga
2004-09-20 20:32
2004.10.10
Как удалить закладку PageControla во время выполнения прг ?


14-1095754445
_User_
2004-09-21 12:14
2004.10.10
OpenSource проект на Delphi (WinAPI)


14-1095917397
pavel_guzhanov
2004-09-23 09:29
2004.10.10
Ассемблер


3-1095254773
yaric
2004-09-15 17:26
2004.10.10
TISC_DB_HANDLE он же PVOID из IBASE





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский