Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Получить скриншот окна, HIDE


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

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

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

Автор: Poseidon 2.6.2013, 20:06
Цитата(lollollollol @  2.6.2013,  19:38 Найти цитируемый пост)
Все испробываные мною методы вместо скрина отдают прямоугольник "Квадрат Малевича" 
И какие же это методы?

В DRKB есть статья "Получение изображения экрана", там аж 14 примеров кода. В большинстве и них передается Handle окна.

Автор: lollollollol 2.6.2013, 22:19
От туда и брал примеры.

Метод первый возвращает чёрный квадрат.
Метод 2 - Ошибка "Unsupported clipboard format." (подставил хендл)
Метод 3 - 
Код

var
  bmp:PBitMap;
begin
  bmp:=NewBitmap(500,500);
  bmp.Handle:=CreateWindwowBitmap($000704B0);
  bmp.SaveToFile('C:\1.bmp');
  bmp.Free;

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



Вопрос остаётся актуален, как получить скрин окна со свойством HIDE?

Добавлено через 13 минут и 32 секунды
http://forum.vingrad.ru/forum/topic-173135/anchor-entry1261015/0.html
Тоже самое, чёрный квадрат

Автор: Yanis 24.6.2013, 22:59
lollollollol
Не помню, есть ли это в ДРКБ, но http://msdn.microsoft.com/en-us/library/dd162869.aspx должна тебе помочь. Объявляется так:
Код
function PrintWindow(HWND: HWND; hdcBlt: HDC; nFlags: DWORD): BOOL; stdcall; external 'user32.dll';


Добавлено через 9 минут и 49 секунд
Невнимательно читаю. Если тебе нужно спрятанное окно, то не получится скорее всего.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)