Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2013, 14:24   #1
lollollollol
Форумчанин
 
Регистрация: 23.03.2013
Сообщений: 218
По умолчанию Получить скриншот окна, HIDE

Здравствуйте. Есть окно, которому отправлено сообщение HIDE, окно послушно спряталось.

Как теперь можно получить скриншот окна, не делая его видимым?

Все испробованные мною методы вместо скрина отдают прямоугольник "Квадрат Малевича"
У кого какие соображения?


В DRKB есть 14 примеров, но

Метод первый возвращает чёрный квадрат.
Метод 2 - Ошибка "Unsupported clipboard format." (подставил хендл)
Метод 3 - Тоже чёрный квадрат если окно скрыто
Метод 4 - не делает скриншот скрытых окон, делает скрин заданой области
Пример 5 - Тож самое что и в 4
Пример 6 - Снова малевич рисует
Пример 7 - Тоже не канает
Пример 8 - Скринит видимый экран
Пример 9 - Тож самое
Пример 10 - Тож самое
Пример 11 - Тож самое
Пример 12 - Снова тлько визуальну часть экрана скринит
Пример 13 - Снова, даже если окно сверху то и его заскринит
Пример 14 - Тож самое.

http://forum.vingrad.ru/forum/topic-...1261015/0.html
Тоже самое, чёрный квадрат

Вопрос остаётся актуален, как получить скрин окна со свойством HIDE?
lollollollol вне форума Ответить с цитированием
Старый 03.06.2013, 14:42   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А перетащить его за пределы экрана и сделать видимым?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 03.06.2013, 14:53   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
А перетащить его за пределы экрана и сделать видимым?
Врядли... Перерисовки то нет.
Сомневаюсь что что-то получится.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.06.2013, 15:17   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Да, не катит. Разве что сделать на мгновение видимым и получить скрин
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 03.06.2013, 15:20   #5
lollollollol
Форумчанин
 
Регистрация: 23.03.2013
Сообщений: 218
По умолчанию

ну так мерцание получается, не красиво.
Я вот подумал, форма выполняет отрисовку. Нельзя ли Обменуть окно, чтобы оно выполнило отрисовку, но отправила картинку мне?
lollollollol вне форума Ответить с цитированием
Старый 03.06.2013, 15:43   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от lollollollol Посмотреть сообщение
ну так мерцание получается, не красиво.
Я вот подумал, форма выполняет отрисовку. Нельзя ли Обменуть окно, чтобы оно выполнило отрисовку, но отправила картинку мне?
врятли, так как перерисовка то идет на контексте устройства.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 03.06.2013, 16:15   #7
lollollollol
Форумчанин
 
Регистрация: 23.03.2013
Сообщений: 218
По умолчанию

Или есть ещё такая штука - воторй рабочий стол. Когда просто мышку уводишь вправо, и там на втором мониторе всё видно.

Вот может создать чтото типа второго раб стола, но чтоб мышка туда не убегала, и уже там скрин получить... Но мне нужно чтоб окно было скрктым, чтоб даже в пуске было видно его. а так можно и за пределы стола сдвинуть
lollollollol вне форума Ответить с цитированием
Старый 03.06.2013, 16:25   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
мне нужно
Тебе нужно сначала объяснить всем присутствующим зачем тебе это нужно.
А уже потом выдумывать вторые рабочие столы.
На данный момент твоя задача не решаема.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.06.2013, 16:38   #9
lollollollol
Форумчанин
 
Регистрация: 23.03.2013
Сообщений: 218
По умолчанию

неправда. Решаема. Просто ищу лучший способ.
Хочу сделать чтото типа виртуального раб стола
lollollollol вне форума Ответить с цитированием
Старый 03.06.2013, 16:40   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Хочу сделать чтото типа виртуального раб стола
Это не так делается )
Виртуального стола для чего?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с Form SHOW HIDE и виндовые окна AK BULLETS Общие вопросы Delphi 11 27.02.2015 11:32
Скриншот окна Kukurudza Win Api 2 08.04.2013 13:22
скриншот неактивного окна Pamparam Общие вопросы Delphi 0 23.01.2012 19:43
Как запустить консольное приложение, без окна, типа Hide? XerSon Общие вопросы Delphi 4 28.02.2011 10:33
Hide окна Horus92 Общие вопросы Delphi 5 09.12.2009 23:36