Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программное обеспечение > Бывшие DOS-программеры! К вам взываю!


Автор: bagira 6.9.2004, 18:13
На одном заводе несколько лет работает моя программа, написанная в Turbo-Pascal 7 под DOS. Есть в ней фрагмент, когда на экран выводится график, и, по желанию оператора, производящего опрос установок, можно этот график вывести на печать. Для этого было самое простое решение - достаточно нажать клавишу Print Screen - и рисунок шел на принтер.

Несколько лет все было безупречно. Но вот оттуда позвонили и сказали, что теперь Print Screen перестал работать. Работник, сообщивший это, в компьютерах и программах не разбирается, поэтому - из его сообщений непонятно, что именно происходит, и можно понять двояко. Я рассматриваю два возможных варианта неисправности:

1. Печать вообще не проиходит. Компьютер зависает.
2. Печать начинается, но после этого компьютер зависает.

Еще дело осложняется тем, что тамошние юзеры - люди с живым воображением, любознательным мышлением и с шаловливыми ручонками. В-общем, они уже не раз все портили на компе - стирали программы, теряли данные, совали в дисковод отвертки и другие предметы. Так вот, у меня подозрение, что они могли по ошибке стереть какую-нибудь важную программу, отвечающую конкретно за действия Print Screen sad.gif

А вот какая программа - отвечает за действия Print Screen?

Нет ли среди участников форума тех, кто еще помнит что-либо из DOS и мог бы посоветовать, что проверять и восстанавливать , когда поеду в командировку. Чтобы ехать не просто так, а хотя бы иметь четкое представление, что сломалось и как исправить? sad.gif

Заранее благодарна!

Автор: Alex 6.9.2004, 18:46
Могли поставить принтер, который не печатает из под Dos

Автор: bagira 6.9.2004, 18:58
alex-co
Это исключено. Принтер там один, тот который мы поставили раньше, другого там нет.
Матричный, старый.

Автор: 3,14 7.9.2004, 10:38
Похоже за Print Screen отвественнен graphics.com, инфу брать здесь : http://support.microsoft.com/default.aspx?scid=kb;en-us;75180&Product=msdos, а ещё более полное http://support.microsoft.com/search/default.aspx?InCC_hdn=true&Catalog=LCID%3D1033%26CDID%3DEN-US-KB%26PRODLISTSRC%3DON&withinResults=&QuerySource=gASr_Query&Product=msdos&Queryc=print+screen&Query=print+screen&KeywordType=ALL&maxResults=25&Titles=false&numDays=&InCC=on

Автор: Akina 7.9.2004, 11:28
За печать через PrintScreen из текстовых режимов отвечает BIOS компьютера. Из графических, как верно сказал 3,14 - graphics.com, загружающийся в автобате.

Наверное поправили что-то, оптимизаторы...

Автор: bagira 7.9.2004, 17:05
Спасибо всем, кто ответил!

sad.gif Мне удалось выяснить некоторые подробности:

Печать через Print Screen происходит нормально, а после печати рисунка - компьютер зависает.

То есть, наверное, не в Print Screen дело.. Что-то похуже adv/insane.gif
А может быть - это портится материнская плата, или видеокарта, или принтер?

Наметила план по проверке неисправности (когда приеду на завод):
1. Напечатаю экран с текстом
2. Напечатаю графический экран, но не из своей программы, а например, заставку из какой-нибудь игры.
3. Заменю принтер (если найду запасной sad.gif ) и повторю с ним.
4. Попробую поставить свои программы на другой компьютер (если найду) и повторю снова все с начала.

А что еще вы бы посоветовали проверить в этой ситуации?

Автор: 3,14 8.9.2004, 11:59
А если там отладочную информацию после каждой строчки после печати выводить куда-нить, чтоб точно определится на чём виснет. Да и сам код бы не помешал, если конечно не секрет...

Автор: Cashey 9.9.2004, 00:15
Советую, для начала поменять ленту в принтере smile.gif

Автор: bagira 10.9.2004, 13:29
Cashey
Я понимаю, посмеяться, конечно, проще всего... rolleyes.gif

3,14
Действия Print Screen никак не связаны с моей программой, это как бы функция системы, и получить оттуда отладочную информацию очень затруднительно. Я не знаю как... sad.gif
Эта странная клавиша даже никак не определяется с помощью ReadKey - не выдает скан-кода.

Автор: 3,14 10.9.2004, 13:32
А может всё снести и поставить заново, бывает помогает, особенно когда кто-нить где-нить напортачит cool.gif

Автор: S.A.P. 10.9.2004, 13:50
Если винда стоит, то можно PrintScrin ом в Paint сливать и печатать.

Автор: Akina 10.9.2004, 14:28
bagira
Цитата
Я рассматриваю два возможных варианта неисправности:

1. Печать вообще не проиходит. Компьютер зависает.
2. Печать начинается, но после этого компьютер зависает.

Сорри, пропустил я это...

Рассмотри третий вариант - Печать вообще не происходит, компьютер работает как обычно. Он, кстати, наиболее вероятен...

И еще - Perchilla наталкивает на интересную мысель. А не заменили ли там MS-DOS на DOS-окно от Windows 9x ???

Автор: Кащей 10.9.2004, 18:01
У клавиши PrintScreen нет скэн-кода, есть у комбинации Ctrl+PrintScreen 0;114 (в десятиричной системе)
Но это тебе ничем не поможет, если печать начинается - значит ДОС отрабатывает нажатие этой клавиши. Мне кажется (так заочно ничего не скажешь точно) но все же здесь дело либо в принтере, либо в буфере ДОСа. Как вариант можно попробовать увеличить buffers в файле config.sys или как я уже сказал проверить ленту на принтере.

Автор: bagira 11.9.2004, 21:45
Akina
Я выяснила подробнее, и первый вариант отметаю. Это второй, точно. Печать происходит и полностью отрабатывает. И потом компьютер зависает, помогает только перезагрузка.


Цитата(Perchilla @ 10.9.2004, 13:50)
Если винда стоит, то можно PrintScrin ом в Paint сливать и печатать.

Нет, там чистый ДОС, абсолютно. Иначе (если ДОС-эмуляция) - не успевают считываться данные с прибора. Часть теряется.

Цитата
здесь дело либо в принтере, либо в буфере ДОСа. Как вариант можно попробовать увеличить buffers в файле config.sys или как я уже сказал проверить ленту на принтере.


Cashey
Спасибо, я этот вариант попробую!

3,14
Если ничего не поможет, то в ход пойдет и твое предложение rolleyes.gif

Я уеду в воскресенье. Разобравшись, в чем суть проблемы, я могу оттуда что-нибудь сообщить.
Большое всем спасибо! adv/49.gif

Автор: bagira 14.9.2004, 15:11
3,14
Переустановила MS DOS заново по твоему совету - и все заработало, как надо!!! Спасибо огромное! adv/72.gif

Всем большое спасибо и привет из Челябинска, где нахожусь в командировке! rolleyes.gif

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