Я написал программу на VB.NET, которая сделала то, что вы указали, за исключением проблемы с размером экрана.
Я встроил веб-элемент управления (посмотрите в самый низ всех элементов управления) в форму и изменил его настройки (Скрыть прокрутку). Я использовал таймер для ожидания динамического содержимого, а затем использовал «copyFromScreen» для получения изображения.
Моя программа имела динамические размеры (настраивается через командную строку). Я обнаружил, что если бы я сделал мою программу больше экрана, изображение просто вернуло бы черные пиксели за пределы области экрана. Я не исследовал дальше, так как моя работа была закончена в то время.
Надеюсь, это даст вам хорошее начало. Извините за любые неправильные формулировки. Я вхожу в Windows для разработки только раз в пару месяцев.