sla8a писал(а):
Наверно правильнее будет добавить еще одно свойство WinEnum которое будет отсекать окна которых нет на рабочем столе, как раз для таких случаев.Мало-ли для чего может понадобится такое окно. Взаимодействие посредством SendMesagge, к примеру.
А вот в ScreenShort нет проверки. Мол, уважаемая BitBlt скопируй-ка мне супер скрин толщиной менее 1 пикселя

procedure THIScreenShort._work_doCapture;
...
GetWindowRect(wnd,r); // А ведь прямоугольник то бракованный

//Bmp := NewBitmap(r.Right-r.Left,r.Bottom-r.Top);
Bmp := NewDIBBitmap(r.Right-r.Left, r.Bottom-r.Top, pf32bit);
end;
BitBlt(Bmp.Canvas.Handle,0,0,Bmp.Width,Bmp.Height,DC,0,0,SRCCOPY);
....