В момента сте офлайн в очакване на повторно свързване с интернет

Отстраняване на неизправности в основани на MS-DOS програми в Windows XP

Поддръжката за Windows XP завърши

Microsoft завърши поддръжката за Windows XP на 8 април 2014 г. Тази промянa се отрази на актуализациите на софтуера ви и на опциите за защита. Научете какво означава това за вас и как да останете защитени.

За версията на тази статия, предназначена за Microsoft Windows 2000, вижте 165214 (Тази връзка може да сочи към съдържание, което е отчасти или изцяло на английски).
КРАТКО ИЗЛОЖЕНИЕ
Тази статия описва начините за отстраняване на неизправности в MS-DOS базирани програми в Windows
ДОПЪЛНИТЕЛНА ИНФОРМАЦИЯ

Тестване на подсистемата Ntvdm

Първото нещо, което трябва да тествате при проблеми с MS-DOS базирана програма е NTVDM (виртуална машина за DOS на Windows). Можете да използвате помощната програма Command.com, за да тествате дали подсистемата NTVDM се изпълнява правилно. За да стартирате командата Command.com, изпълнете следните стъпки:
  1. Натиснете бутона Start ("Старт") и щракнете върху Run ("Изпълни").
  2. В полето Open ("Отвори") въведете command.com и натиснете OK.
Това би трябвало да стартира прозореца на командния ред. Ако това не сработи правилно, вероятно има проблем в подсистемата NTVDM и трябва да проверите следните елементи:
  • Проверете файловете Config.nt и Autoexec.nt в папката SystemRoot%\System32 за нестандартни настройки..

    Използвайте оператора REM, за да обозначите като коментар всички записи, освен следните записи по подразбиране:
       Config.nt   ---------   dos=high, umb   device=%SystemRoot%\System32\Himem.sys   files=20   Autoexec.nt   -----------   lh %SystemRoot%\System32\Mscdexnt.exe   lh %SystemRoot%\System32\Redir   lh %SystemRoot%\System32\Dosx   lh %SystemRoot%\System32\Nw16 (само при инсталиран CSNW)   lh %SystemRoot%\System32\Nw16 (само при инсталиран на CSNW)						
    Друг начин да изпълните тази задача е като разширите Autoexec.nt_ and Config.nt_ от компактдиска на Windows в папката %SystemRoot%\System32.
  • Натиснете CTRL+SHIFT+ESC , за да стартирате диспечера на задачите, затворете всички изпълняващи се програми и проверете дали не се изпълняват и други процеси на NTVDM.
  • Предотвратете изпълнението на програмите при стартирането. Програмите могат да бъдат изпълнени от две места при стартиране: групите за стартиране и редовете Run и RunOnce в системния регистър. Можете да проверите тези места както следва:
    1. Групите за стартиране представляват папки на локалния твърд диск. Те се намират на следните места:
      • %SystemRoot%\Profiles\user_name\Start menu\Programs
      • %SystemRoot%\Profiles\Default user\Start menu\Programs
    2. Редовете Run и RunOnce се намират в системния регистър под следните ключове:
      HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\
  • Проверете файловете на системата NTVDM в папката %SystemRoot%\System32. Проверете следните файлове, за да се уверите, че са с правилната версия, чрез проверка на техния размер и дата:
       Ntio.sys   Ntdos.sys   Ntvdm.exe   Ntvdm.dll (само за Windows NT 3.1)   Redir.exe					
  • Свързаните с NTVDM записи в системния регистър са:
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment
      Този ключ съхранява променливите на средата от файловете Config.sys и Autoexec.bat за използване в Windows.
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ VirtualDeviceDrivers
      Този ключ съхранява драйверите на устройствата, използвани в сесия на NTVDM. Windows Setup създава тези записи при инсталиране на драйвер на устройство.

Проверка за специфични програмни проблеми

В Windows XP не работят следните функции:
  • Всички функции на MS-DOS с изключение на подържането на функциите на API (интерфейс за програмиране на приложения) за превключване на задания.
  • Не се поддържа блоковия режим на драйверите на устройствата. Не се поддържат блокове с устройства, тъй като API за управление на входа и изхода на MS-DOS (IOCTL), които работят с блокови устройства и функции SETDPB не се поддържат.
  • Функцията на прекъсване 10 1А връща стойност 0; всички останали функции се предават само към паметта само за четене (ROM).
  • Обръщенията към прекъсване 13, отнасящи се до забранен достъп до диск не се поддържат.
  • Прекъсване 18 (ROM BASIC) води до издаване на съобщение, че ROM BASIS не се поддържа.
  • Прекъсване 19 не рестартира компютъра, но затваря нормално отворената в момента виртуална машина на DOS (VDM).
  • Прекъсване 2F, отнасящо се до обръщенията към програмата DOSKEY (АХ =4800), не се поддържа.
  • Не се поддържат функциите 2,3,4,5,8,Е и F на MSCDEX (функции на Microsoft за разширения на CD-ROM)
  • 16-битовата подсистема на Windows, работеща на x86 компютри, поддържа работещитев подобрен режим програми; тя, обаче, не поддържа драйвери за 16-битови виртуални устройства (VxDs). Подсистемите, работещи на различни от x86 компютри емулират набора инструкции на Intel 40486, което позволява на компютъра да изпълнява програми в подобрен режим, като Microsoft Virtual Basic при компютри с намален набор инструкции (RISK).
Това означава, че Windows не поддържа 16-битови програми, изискващи неограничен достъп до хардуера. Ако вашата програма е такава, тя няма да работи в Windows NT, Windows 2000 или Windows XP.

Следващата проверка е дали са зададени правилно настройките на файловете Autoexec.nt и Config.nt= Винаги изпробвайте изброените по-горе в статията настройки по подразбиране. Някои програми изискват изпълнение на специални настройки или драйвери във файловете Config.sys или Autoexec.bat. В такъв случай, има две опции за инициализиране на тези файлове при стартиране на програмата:
  • Въведете следните редове във файловете Config.sys и Autoexec.bat в папката %SystemRoot%\System32.
  • Създайте нови файлове Config и Autoexec за изпълнение при стартиране на тази програма. За тази цел изпълнете следните стъпки:
    1. Създайте файловете и ги запишете с разширение .nt в различна от %SystemRoot%\System32 папка (тези файлове обикновено се записват в същата папка, като програмата).
    2. Щракнете с десен бутон върху работния плот, посочете New ("Нов") и щракнете върху Shortcut ("Пряк път").
    3. В полето Type the location of the item ("Тип на местонахождението на елемента") въведете пълния път до файла, който искате да изпълните и натиснете Next ("Напред").
    4. В полето Type a name for this shortcut ("Въведете име за този пряк път") въведете име за прекия път и натиснете Finish ("Готово"). Това създава нов пряк път на работния плот.
    5. Щракнете с десен бутон върху новия пряк пък и щракнете върху Properties ("Свойства").
    6. В раздела Program ("Програми") щракнете върху Windows, за да отворите диалоговия прозорец за пътя до файловете Config.sys и Autoexec.bat..
    7. Въведете пълния път до създадените файлове и натиснете OK и в двата диалогови прозореца.
    Щракването върху иконата изпълнява специфичните за програмата файлове Autoexec.bat и Config.sys. Тези настройки са подложени на същите ограничения, както изброените за MS-DOS базираните програми.
В свойствата на програмата има други настройки. Ако програмата не работи правилно, проверете всички раздели и се уверете, че настройките й са зададени според спецификациите на производителя. Ако програмата продължава да не работи, се свържете с доставчика, за да проверите дали тя се поддържа под Windows.

За допълнителна информация щракнете върху следния номер на статия в базата знания на Microsoft, за да я отворите:
171940 Входно/изходните операции на MS-DOS приложения водят до достъп до флопи дисково устройство. (Тази връзка може да сочи към съдържание, което е отчасти или изцяло на английски)
156687 Записите в CONFIG.NT или AUTOEXEC.NT могат да доведат до грешки в NTVDM (Тази връзка може да сочи към съдържание, което е отчасти или изцяло на английски)
102418 Грешка в NTVDM: В устройството няма дискета (Тази връзка може да сочи към съдържание, което е отчасти или изцяло на английски)
142026 Err: 'Hidden console of WOW VDM' running 16-bit or DOS app ("Скрита конзола на WOW VDM изпълняваща 16-битови или DOS приложения") (Тази връзка може да сочи към съдържание, което е отчасти или изцяло на английски)
Продуктите на други производители, които се обсъждат в тази статия, са произведени от фирми, независими от Microsoft. Microsoft не дава никаква гаранция, неявна или друга, за характеристиките или надеждността на тези продукти.
apps msdos application
Свойства

ИД на статията: 314106 – Последен преглед: 11/03/2006 15:47:56 – Редакция: 2.1

  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional Edition
  • kbregistry kbenv kbinfo kbtshoot KB314106
Обратна връзка