Вниз
Скачать: CL | DM;

снимок экрана полноэкранного   Найти похожие ветки 

← →
Yrtimd ©   (2003-02-05 07:33) [0]

Итак, какой уже раз обращаюсь с этим вопросом:
Как получить снимок экрана, скажем, при работе консольного приложения в полноэкранном текстовом режиме.
Т.е. снять рабочий стол - элементарно, а вот как можно определить, что в данный момент видеоадаптер "находится в текстовом режиме" и снять данные о текущей картинке...
Желательно - без использования сторонних компонент.
Заранее благодарен. ;)


← →
Юрий Зотов ©   (2003-02-05 07:58) [1]

В DOS это выглядело так:

Адрес видеобуфера в текстовом режиме - $B800.
2 байта на символ.
80х25 символов на экране (чаще всего).

То есть, надо взять 4000 байт по адресу $B800.

Если полагать, что текстовый режим в Windows совместим с DOS, то должно быть то же самое. Во всяком случае, в Windows вполне нормально работают мои старые DOS-программы, использующие этот способ доступа к видеопамяти.

Но если Вы хотите снять копию экрана ЧУЖОЙ программы, то, видимо, придется внедряться в ее виртуальную DOS-машину. Думаю, проще всего это будет сделать, написав DOS-овскую TSR (Int9) и запуская ее в одном батнике с программой (перед ней).



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
4-38632
alvin
2003-01-01 16:33
2003.02.13
CreateThread


1-38342
БурЖуй
2003-02-02 13:19
2003.02.13
Динамические массивы


1-38208
Nemas
2003-02-05 08:05
2003.02.13
Пра простеньких вопросов


3-38138
me2
2003-01-28 18:25
2003.02.13
Params в IBDataSet


9-38002
lexerursik
2002-04-05 16:15
2003.02.13
Работа с непрямоугольными битмапами




   Наверх