Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Microsoft Windows 2000/XP (http://forum.oszone.net/forumdisplay.php?f=6)
-   -   Проблема с работой DOS-программы под WinXP (http://forum.oszone.net/showthread.php?t=92206)

Oleg_SK 15-10-2007 13:42 660880

Проблема с работой DOS-программы под WinXP
 
Сабж. Ситуация следующая: есть комп с WinXP (SP2), и есть старая досовская программа. Проблема в том, что DOS-программа не работает на этом компе. При ее запуске экран монитора становится черным и пустым, после чего дальше дело не идет. Можно было бы свалить проблему на несовместимость этой проги с WinXP, и забыть о ней, но так сделать нельзя, т.к. эта программа уникальна и очень нужна. Программа предназначена для трансляции кодов управления плоттером в коды понятные ЧПУ станка. На входе она принимает plt-файл сделанный с помощью CorelDraw, а на выходе создает файл с кодами управления станком. Решив поэкспериментировать, я выяснил следующее:
1) Есть пять компов под управлением ОС WinXP (SP2). На трех из них данная программа работает нормально (причем, без каких либо доп. настроек), а на двух нет. Причем, один из проблемных компов после запуска этой программы помимо демонстрации черного экрана еще и пищал системным динамиком (короткий без перерыва повторяющийся писк, типа пи-пи-пи-...). На двух компах из указанных стояла ОС с одного дистрибьютива. На одном из них программа работает нормально, а на другом нет;
2) Если на проблемных компах загрузить ОС MS DOS (с помощью загрузочной дискеты, сделанной в WinXP), и запустить данную программу, то она работает нормально.
3) Пробовал на проблемных компах играться с настройками совместимости находящихся в свойствах файла программы, но ничего этим не добился.
Помогите, плиз, разобраться, почему данная программа не хочет запускаться на некоторых компах под WinXP? Очень нужно запустить ее на таком компе... В аттаче выкладываю два файла. Первый файл: PLTVIEW.EXE - это сама DOS-программа, а второй - это PLT-файл, сделанный с помощью CorelDraw. Программа должна запускаться так: "PLTVIEW.EXE KV.PLT" (разумеется, без кавычек).

d petr 15-10-2007 14:36 660930

Попробуйте такой твик
Код:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WOW]
"DefaultSeparateVDM"="Yes"


Oleg_SK 15-10-2007 15:06 660957

d petr, нет - это не работает (все осталось по старому). Кстати, на на компах, где проблем с программой не было (по крайней мере на одном из них) этот параметр равен "no"...

Petya V4sechkin 15-10-2007 15:16 660963

Oleg_SK, к сожалению, не смог воспроизвести эту проблему (пробовал на нескольких компах), поэтому общие советы:
  • укоротить переменные TEMP и TMP (типа C:\TEMP);
  • поменять виндусовую раскладку (язык ввода по умолчанию) с английской на русскую или наоборот (как ни странно, это шаманство решило проблему с незапускающимся Парусом на одном из наших бухгалтерских компов);
  • самый общий совет.

d petr 15-10-2007 16:31 661015

Цитата:

Цитата Petya V4sechkin
укоротить переменные TEMP и TMP (типа C:\TEMP)

У меня помогло - программа не ругается

Oleg_SK 16-10-2007 10:42 661456

Petya V4sechkin
Цитата:

Цитата Petya V4sechkin
укоротить переменные TEMP и TMP (типа C:\TEMP); »

Цитата:

Цитата Petya V4sechkin
поменять виндусовую раскладку (язык ввода по умолчанию) с английской на русскую или наоборот (как ни странно, это шаманство решило проблему с незапускающимся Парусом на одном из наших бухгалтерских компов); »

Это, к сожалению, не помогло.
Цитата:

Цитата Petya V4sechkin
самый общий совет. »

Вроде бы все проверил, о чем говорилось в этой статье, но источника проблемы не нашел. На всякий случай, в аттаче выкладываю все ключи реестра и файлы с проблемного компа, о которых говорилось в этой статье.

[Добавлено]
На обоих проблемных компах стоят видеокарты GeForce 7600 (на одном GS, а на другом GT). Может ли проблема возникать из-за видеокарты?

[Добавлено]
Хм, проблема похоже действительно в видеокартах :o Во всяком случае я сейчас заменил на одном из проблемных компов видеокарту (поставил древнюю PCI S3 Trio, без драйверов), и проблемы с DOS-программой исчезли. Хочу добавить, что проблемы возникают с GeForce 7600 в не зависимости от того, установлены ли драйвера для нее (проблемы возникают даже тогда, когда эта видеокарта определяется диспетчером устройств как неизвестное устройство). Почему так происходит? Ведь под MS DOS с данными видеокартами проблем не возникает...

Petya V4sechkin 16-10-2007 11:28 661495

Сейчас мучительно думаю, зачем отредактировал свой предыдущий пост вчера в 17:50. Перенапрягся, наверное...

Oleg_SK, программа пытается работать в разрешении 640 x 480 @ 60 Гц. Желательно выяснить, может ли видеокарта + монитор работать в таком режиме в среде Windows. Бывает, что DDC косячит (хотя я видел такое только на Radeon'ах, там через ATI Tray Tools приходится отключать DDC). Можно попробовать с помощью RivaTuner сделать драйвер монитора (inf-файл).

Oleg_SK 16-10-2007 12:45 661549

Petya V4sechkin
Цитата:

Цитата Petya V4sechkin
программа пытается работать в разрешении 640 x 480 @ 60 Гц »

Как можно проверить, может ли видеокарта работать в этом режиме под WinXP? Проблема, скорее всего не в мониторе, т.к. с другой видеокартой он нормально работает в этом режиме.
Цитата:

Цитата Petya V4sechkin
Бывает, что DDC косячит (хотя я видел такое только на Radeon'ах, там через ATI Tray Tools приходится отключать DDC). »

А как можно отключить DDC у GeForce, и не опасно ли это?

[Добавлено]
Petya V4sechkin
Создал я INF-файл с помощью RivaTuner, где указал разрешение 640x480 60Hz, и установил его на монитор. Тем не менее, WinXP не дает выбрать это разрешение (минимум: 800x600). Как это исправить, чтобы режим 640x480 стал доступен?

Petya V4sechkin 16-10-2007 13:08 661563

Цитата:

Цитата Oleg_SK
Тем не менее, WinXP не дает выбрать это разрешение (минимум: 800x600).

И не даст, это нормально.
Можно в какой-нибудь игре выбрать разрешение 640 x 480 + fullscreen mode.
Насчет 60 Гц думаю, я погорячился (вряд ли это имеет значение).

Oleg_SK 16-10-2007 13:14 661567

Petya V4sechkin
Я сейчас загрузил WinXP в безопасном режиме с поддержкой VGA. Комп нормально работает, при этом разрешение экрана 640x480@60Hz. На компе стоит GeForce 7600GT.

Petya V4sechkin 16-10-2007 13:15 661569

Oleg_SK, а программа не запускается?

Oleg_SK 16-10-2007 14:45 661646

Petya V4sechkin
Цитата:

Цитата Petya V4sechkin
а программа не запускается? »

Нет, проблема та же... :(

P.S.: Хочу добавить еще вот что:
1) Другие DOS-приложения на проблемных компах работают нормально. Во всяком случае, Volkov Commander работает без проблем (правда он выставляет для себя разрешение 720x400@70Hz).
2) На кривой пиратский дистрибьютив WinXP пенять не приходится, т.к. на одном из проблемных компов стоит лицензионная ОС;
3) Проблема происходит на разных версиях WinXP. По крайней мере, на проблемных компах стоят версии Pro и Home.

Petya V4sechkin 16-10-2007 15:32 661693

Oleg_SK, если порыться в гугле, видно, что проблема существует (пример). Решения пока не нашел.

Можно попробовать рецепты из FAQ:
Не работают DOS игры и программы, при запуске черный экран или монитор засыпает
(альтернативная ссылка на winxpfix). Только аккуратнее с патчерами.

Также можно поэкспериментировать с разными версиями Forceware (думаю, достаточно попробовать самую старую и самую новую). А также с BIOS'ом видеокарты.

В конце концов, остается еще DOSBox (статья на THG.ru).


Время: 20:54.

Время: 20:54.
© OSzone.net 2001-