![]() |
когда я спрашивал это в форуме мне никто не ответил, я нашёл ответ и поделюсь
Проблема у меня была с запуском ДОС приложений под Win2k и WinXP. Заключалась она в том что при запуске приложения, для которого не был настроет pif файл (ярлык) с указанием сколько памяти использовать приложению, оно не выполнялось NTVDM писал что обнаружена неверная инструкция и предлагало закрыть приложение или проигнорировать эту ошибку, при этом как правило многократное нажатие IGNORE не помогало и приложение так или иначе закрывалось. Решение проблемы. Чтобы для всех ДОС приложений сразу выделялось достаточное количество памяти и не приходилось к каждому приложению создавать ярлык с указанием сколько памяти использовать тому или иному приложению необходимо нажать правой кнопкой мыши на ярлыке %systemroot%\_default и на нём выставить в разделе ПАМЯТЬ все значения на AUTO или на максимум. Там же можно сделать чтобы все дос приложения запускались в полном экране, т.к. при переходе из оконного режима в полноэкранный некоторые приложения потом могут немного некорректно отображать цвета (у меня чёрный фон Volcov Commander-а после перехода из иконного режима в полноэкранный становился красным и неправильно прорисовывались шрифты) |
Andrewkras
это будет влиять только на запуск из Explorer-а, а для влияния на ntvdm вообще существует специальный параметр в реестре, который буквально указывает, сколько памяти выделяется приложению. Добавлено: Andrewkras напиши точный текст ошибки, в фак занесу. |
The NTVDM CPU has encountered an illegal instruction.
CS:dd32 IP:3442 OP:ff ff ff ff Chose 'Close' to terminate the application. И предлагается "Close" и "Ignore" Подскажи-ка где оно в реестре хранится плз, а то я не нашёл. ЗЫ а в .chm формате есть копия твоего сайта? |
Andrewkras
Цитата:
[HKLM\System\CurrentControlSet\Control\WOW] WowSize : REG_SZ = значение в килобайтах (по умолчанию 16). вот это откуда: http://registry.km.ru/cgi-bin/main.c...trol&n=wow Кстати, только что пришла в голову мысль, что этот параметр только для Win16 On Win32, а для доса это игнорируется, надо будет проверить на досуге. |
Цитата:
Всё взаимо дополняемо :gigi: [s]Исправлено: Andrewkras, 18:50 9-10-2002[/s] |
необходимо нажать правой
кнопкой мыши на ярлыке %systemroot%\_default, а где этот ярлык взять? |
в корневой папке винды, если не знаешь что такое %systemroot%
если же его вдруг у тебя нема то можно тут взять его и распаковать в корневик винды |
У меня такая проблема.
Есть АРМ, написанный под ДОС на CLIPPER. Необходимо работать на нем в NT 4.0 WS (rus). Запускается и работает вроде нормально. Проблема возникает во время печати. Принтер Epson LX-300 подключен локально. Нажимаю "печатать". Комп довольно долго думает (типа в очередь ставит) и начинает наконец печатать, но постоянно спотыкаясь, построчно. Вобщем, чтобы напечатать один лист А4 нужно ждать минут 10, а то и больше... Диспетчер задач при этом показывает загрузку проца приложением ntvdm.exe на 99%... Но если после нажатия "печатать" сразу выйти из проги, то печать начинается моментально и быстро, как и надо. Более того, если в процессе спотыкающейся печати (но уже после постановки в очередь) перейти в предыдущее досовое окошко проги, не выгружая ее, то всё опять же замечательно летает... Проделал рекомендации, описанные выше. Никакого результата... Может, кто поможет еще чем? Слышал, что в autoexec.nt можно прописать какую-то фичу, которая это дело фиксит... Есть такая тема? Помогите, плз... Ну очень надо! Добавлено: Да, забыл добавить... Когда ось только была установлена, всё было ОК. Начальсь недавно... Причем перед предыдущей установкой оси тоже началась такая фишка - поэтому один раз уже пробовал переустанавливать... Второй что-то не хочется... И еще. Есть где-нибудь инфа, что за файл ntvdm.exe и зачем он нужен? |
Спасибо за оч. цен. инфу.
Я, например, сегодня весь день только и настраивал эти пифы. Причем методом научного тыка обнаружено, что память нужно ставить в конкретных цифрах и желательно максимальное значение. А вот поискать общий шаблон кривых глазок не хватило. |
2 Barmaley
Если еще актуально, то слушай. В свойствах ярлыка досевой проги тыкаешь вкладку Program там есть кнопка Windows NT. Выскочит окошко, где можно задать автоекзек и конфиг именно для этого ярлыка. Но самое главное - внизу есть чекбокс Compatible Timer Hardware Emulation. Вот его и нужно включить (AFAIR). Всех благ. |
Andrewkras
Может кто-нибудь подскажет как бороться с ошибками RunTime Error 200 досовских приложений в Win 2000? Спасибо! Публикация адреса почтового ящика - Нарушение правил раздела форума п. 7 п. 5 |
WinXP
У меня такая проблема... ВСЕ дос-приложения в полноэкранном режиме виснут. Т.е. просто ничего не нажимается. В оконном всё нормально. Если переключиться в полноэкранный, то всё... Если кто с этим встречался или знает, что делать, напишите на Публикация адреса почтового ящика - Нарушение правил раздела форума п. 7 п. 5 или ответте в форуме. Буду премного благодарен. M. |
Guest 147.45.130.* В вин2к с аналогичной проблемой мне помог справиться СП4. Попробуй СП1 себе поставить, может и поможет.
|
Обнаружилась та же проблема: в полноэкранном режиме все дос-приложения виснут.
Что делать? |
Про любые DOS приложения не знаю, но для Clipper можно сказать, что для эффективной его работы,
надо, чтобы он сам умел использовать большую оперативную память. Для него это делает компоновщик Blinker. А чтобы CLipper-программы в NT, XP, 2000, Viste и.т.п. не тормозили себя и других, в том числе спулер печати, нужно использовать при компоновке специальную библиотеку Clip_msk.lib. Она же позволяет делать распечатки документов сложных форм через Excel и многое другое. Найти ее можно здесь |
subbota7, уважаемый, обращайте внимание на дату последнего поста в теме.
|
Время: 00:11. |
Время: 00:11.
© OSzone.net 2001-