Microsoft KB Archive/167357

= DOC: WinDBG Cannot Debug 16-bit Applications Under NT 4.0 =

ID: Q167357

The information in this article applies to:


 * Microsoft Win32 Software Development Kit (SDK)

SUMMARY
The "Tools Guide" in the Win32 Software Development Kit states in the section "About WinDbg" that WinDbg can debug 16-bit Windows-based applications on the Windows NT platform. This statement only applies to Windows NT version 3.51 or earlier. WinDBG cannot be used to debug 16-bit applications under Windows NT version 4.0 or later.

MORE INFORMATION
Note that WinDBG can be used to debug 16-bit Windows-based applications running on Windows NT 3.51 or earlier, under the Win16 VDM (virtual MS-DOS machine), NTVDM. By default, each 16-bit Windows-based application runs as a thread in NTVDM. One of the primary reasons why Win32 developers use the WinDBG debugger to debug 16-bit applications is that it is the only debugger that allows "hard mode" debugging of 16-bit applications under NTVDM.

Hard-mode debugging is especially useful when debugging time-critical events such as timer events and inter-task DDE transactions, and other events such as menu events, system modal windows, etc. By placing the debugger into hard mode, you ensure that the application cannot start or switch to any other applications. This makes the application "task exclusive," and all keyboard and mouse messages are sent only to the debugger and its target application.

Under Windows NT 4.0 or later, you should use the 16-bit Visual C++ version 1.5x debugger to debug a 16-bit application. Note that the Visual C++ debugger will not allow "hard mode" debugging of 16-bit applications under Windows NT 4.0.

Another debugger that can debug a 16-bit application on Windows NT is the NTSD system debugger used in conjunction with the Software Compatibility Test (SCT) tool that comes with the Win32 Software Development Kit (SDK). It provides for low-level debugging of 16-bit software and any VDDs (Virtual DOS Devices) loaded in the NTVDM (NT Virtual DOS Machine) process.

Additional query words: tlswindbg windebug windbgrm tshoot debug

Keywords         : kbtool kbdocerr kbAPI kbKernBase kbGrpKernBase Platform         : NT WINDOWS Last Reviewed: May 23, 1998