DetailPage-MSS-KB

기술 자료

기술 자료: 314106 - 마지막 검토: 2004년 9월 17일 금요일 - 수정: 2.0

이 문서의 Microsoft Windows 2000 버전에 대한 내용은 165214  (http://support.microsoft.com/kb/165214/ ) 를 참조하십시오.

이 페이지에서

요약

이 문서에서는 Windows에서 MS-DOS 기반 프로그램 문제를 해결하는 방법을 설명합니다.

추가 정보

Ntvdm 하위 시스템 테스트

MS-DOS 기반 프로그램에 문제가 있을 때 가장 먼저 테스트해야 할 대상은 Windows Virtual DOS Machine(NTVDM) 하위 시스템입니다. Command.com 유틸리티를 사용하여 NTVDM 하위 시스템이 올바로 실행되고 있는지 테스트할 수 있습니다. Command.com을 시작하려면 다음과 같이 하십시오.
  1. 시작 단추를 누른 다음 실행을 누릅니다.
  2. 열기 상자에 command.com을 입력한 다음 확인을 누릅니다.
명령 프롬프트 창이 시작되어야 합니다. 그렇지 않으면 NTVDM 하위 시스템에 문제가 있는 것이므로 다음 항목을 확인해야 합니다.
  • SystemRoot%\System32 폴더에서 Config.ntAutoexec.nt 파일이 표준 설정이 아닌지 확인합니다.

    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\Vwipxspx(CSNW가 설치된 경우에만)
    						
    또 다른 방법은 Windows CD-ROM에서 %SystemRoot%\System32 폴더로 Autoexec.nt_와 Config.nt_를 확장하는 것입니다.
  • Ctrl+Shift+Esc를 눌러서 작업 관리자를 시작하여 실행 중인 모든 프로그램을 닫고 다른 NTVDM 프로세스가 실행되고 있지 않은지 확인합니다.
  • 시작 시 실행되는 프로그램이 없도록 합니다. 시작 시에 프로그램은 세 위치 즉, 시작프로그램 그룹, 레지스트리의 Run 및 RunOnce 행, Win.ini 파일의 "run=" 및 "load=" 행에서 실행될 수 있습니다. 다음 방법으로 이러한 위치를 확인합니다.
    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\
    3. Win.ini 파일은 메모장을 사용하여 편집할 수 있습니다. Win.ini 파일은 %SystemRoot% 폴더에 있습니다.
  • %SystemRoot%\System32 폴더의 NTVDM 시스템 파일을 검사합니다. 다음 파일의 크기와 날짜를 확인하여 올바른 버전인지 확인합니다.
       Ntio.sys
       Ntdos.sys
       Ntvdm.exe
       Ntvdm.dll(Windows NT 3.1인 경우)
       Redir.exe
    					
  • NTVDM 하위 시스템과 연결된 레지스트리 항목은 다음과 같습니다.
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment
      이 키는 Windows에서 사용하는 Config.sys 및 Autoexec.bat 파일의 환경 변수를 저장합니다.
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ VirtualDeviceDrivers
      이 키는 NTVDM 세션에서 사용되는 장치 드라이버를 저장합니다. Windows 설치 프로그램은 장치 드라이버를 설치할 때 이들 항목을 만듭니다.

프로그램 관련 문제 확인

Windows XP에서는 다음 기능이 작동하지 않습니다.
  • 작업 전환 API(응용 프로그래밍 인터페이스) 함수를 제외한 모든 MS-DOS 함수.
  • 블록 모드 장치 드라이버는 지원되지 않습니다. 블록 장치가 지원되지 않기 때문에 SETDPB 함수와 블록 장치를 처리하는 MS-DOS I/O 컨트롤(IOCTL) API가 지원되지 않습니다.
  • 인터럽트 10 함수 1A는 0을 반환합니다. 다른 모든 함수는 읽기 전용 메모리(ROM)에 전달됩니다.
  • 디스크 액세스 금지를 처리하는 인터럽트 13 호출은 지원되지 않습니다.
  • 인터럽트 18(ROM BASIC)은 ROM BASIC을 지원하지 않는다는 메시지를 생성합니다.
  • 인터럽트 19는 컴퓨터를 다시 시작하지 않고 현재 VDM(Virtual DOS Machine)을 종료합니다.
  • DOSKEY 프로그램 호출(AX = 4800)을 처리하는 인터럽트 2F는 지원되지 않습니다.
  • Microsoft CD-ROM Extensions(MSCDEX) 함수 2, 3, 4, 5, 8, E 및 F는 지원되지 않습니다.
  • x86 컴퓨터 상의 16비트 Windows 하위 시스템은 확장 모드 프로그램을 지원하지만 16비트 가상 장치 드라이버(VxD)는 지원하지 않습니다. x86 컴퓨터 기반이 아닌 하위 시스템은 Intel 40486 명령 집합을 에뮬레이트하여 해당 컴퓨터가 RISC(Reduced Instruction Set Computer)에서 Microsoft Visual Basic과 같은 확장 모드 프로그램을 실행하도록 합니다.
이는 Windows가 하드웨어에 무제한으로 액세스해야 하는 16비트 프로그램을 지원하지 않는다는 것을 의미합니다. 이렇게 액세스해야 하는 프로그램은 Windows NT, Windows 2000 또는 Windows XP에서 작동하지 않습니다.

다음으로 Autoexec.nt 및 Config.nt 파일 설정이 올바른지 확인해야 합니다. 이 문서의 앞 부분에 나와 있는 기본 설정을 사용해 보십시오. 일부 프로그램에는 Config.sys 또는 Autoexec.bat 파일에서 특수한 설정이나 드라이버 실행이 필요합니다. 이 경우 프로그램을 시작할 때 이러한 파일을 초기화하는 두 가지 옵션이 있습니다.
  • %SystemRoot%\System32 폴더에 있는 Config.nt 및 Autoexec.nt 파일에 필요한 행을 입력합니다.
  • 프로그램을 시작할 때 실행될 Config 및 Autoexec 파일을 새로 만듭니다. 이렇게 하려면 다음 단계를 수행하십시오.
    1. .nt 확장명으로 파일을 만들고 %SystemRoot%\System32 폴더가 아닌 다른 폴더에 저장합니다. 이러한 파일은 대개 프로그램과 같은 폴더에 저장됩니다.
    2. 마우스 오른쪽 단추로 바탕 화면을 누르고 새로 만들기를 가리킨 다음 바로 가기를 누릅니다.
    3. 항목 위치 입력 입력란에 실행할 파일의 전체 경로를 입력하고 다음을 누릅니다.
    4. 바로 가기에 사용할 이름을 입력하십시오. 입력란에 바로 가기의 이름을 입력한 다음 마침을 누릅니다. 바탕 화면에 새로운 바로 가기가 만들어집니다.
    5. 마우스 오른쪽 단추로 새 바로 가기를 누른 다음 속성을 누릅니다.
    6. 프로그램 탭에서 Windows를 눌러 Autoexec 파일과 Config 파일의 경로를 나타내는 대화 상자를 엽니다.
    7. 작성한 파일의 전체 경로를 입력한 다음 확인을 눌러 대화 상자를 닫습니다.
    이 아이콘을 누르면 해당 프로그램에 대해 지정한 Autoexec 파일과 Config 파일이 실행됩니다. 이 설정에는 MS-DOS 기반 프로그램에서 설명한 것과 같은 제한이 적용됩니다.
프로그램 속성에는 다른 설정도 있습니다. 프로그램이 올바로 작동하지 않으면 모든 탭을 확인하여 프로그램이 제조업체의 사양에 따라 설정되었는지 확인합니다. 그래도 프로그램이 작동하지 않으면 해당 프로그램이 Windows에서 지원되는지 프로그램 공급업체에 문의하십시오.

자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
171940  (http://support.microsoft.com/kb/171940/ ) MS-DOS 응용 프로그램 I/O 작업으로 인해 플로피 드라이브가 액세스된다
156687  (http://support.microsoft.com/kb/156687/ ) Config.nt 또는 Autoexec.nt의 항목이 NTVDM 오류를 발생시킬 수 있다
102418  (http://support.microsoft.com/kb/102418/ ) NTVDM 오류: 드라이브에 디스크가 없습니다.
142026  (http://support.microsoft.com/kb/142026/ ) 16비트 또는 DOS 응용 프로그램 실행 중 'WOW VDM의 숨겨진 콘솔' 오류 발생
이 문서에 나와 있는 다른 공급업체 제품은 Microsoft와 무관한 회사에서 제조한 것입니다. Microsoft는 이들 제품의 성능이나 신뢰성에 관하여 명시적이든 묵시적이든 어떠한 보증도 하지 않습니다.



Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹 (http://support.microsoft.com/newsgroups/default.aspx) 에 참여하시기 바랍니다.

본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional
키워드: 
kbinfo kbtshoot kbregistry kbenv KB314106
공유
추가 지원 옵션
Microsoft Community 지원 포럼
직접 문의하기
Microsoft Certified Partner 찾기
Microsoft Store