DOCUMENT:Q101631 20-JUL-1993 [W_NT] TITLE :INF: Windows NT Serial Communication Support, MS-DOS & Windows PRODUCT :Windows NT PROD/VER:3.10 OPER/SYS:WINDOWS KEYWORDS: ---------------------------------------------------------------------- The information in this article applies to: - Microsoft Windows NT operating system, version 3.1 - Microsoft Windows NT Advanced Server, version 3.1 ---------------------------------------------------------------------- The text below describes how Windows NT supports serial communications in 16-bit Windows-based and in MS-DOS-based applications. 16-Bit Windows-Based Applications --------------------------------- Windows NT supports serial communications in 16-bit Windows-based applications in the same manner that 16-bit Windows 3.1 does, through communications functions in the Windows application programming interface (API). From the application standpoint, Windows NT provides COMM.DRV, the communications driver in 16-bit Windows 3.1, because a mapping exists between the Windows 3.1 and Windows NT functions. This mechanism emulates the EventWord and shadow modem status register (MSR) to support the GetCommEventMask() function. It also sends WM_COMMNOTIFY messages to support the EnableCommNotification() function. If a 16-bit Windows-based application uses any extended functionality provided by a third-party communications driver, it may not communicate reliably because Windows NT may not support the extended functionality. MS-DOS-Based Applications ------------------------- Most MS-DOS-based communication applications do not use any serial port functions; instead, they directly access the serial port hardware. Windows NT supports these applications by simulating the standard hardware serial adapters, COM1 through COM4; the application never directly controls the serial port hardware. Windows NT simulates four 16450 UARTs at the standard serial I/O addresses and interrupt numbers used in IBM PC-compatible hardware. When each virtual MS-DOS machine (VDM) starts, the simulated UARTs are dormant. When an application accesses a simulated UART, Windows NT connects the simulated UART to the corresponding Windows NT serial port, even if it uses a different address, interrupt number, or a completely different interface. If the corresponding serial port is not present of if it is already in use, Windows NT displays an error dialog box to inform the user of the problem. Some applications have an "idle curiosity" about serial ports that they do not otherwise use. When you run one of these applications in Windows NT, it may cause spurious error messages and/or prevent another application from using the serial ports. At this time, if the software does not provide a method to disable this behavior, there is no method to work around this behavior. Contact your software supplier for a corrected, or Windows NT-specific, version of the application. NOTE: Serial communications is not emulated perfectly because of fundamental differences between the preemptive and nonpreemtive multitasking environments. If an application uses real-time hardware interrupts, it may experience problems caused by preemptive multitasking in Windows NT. Timing serial events in Windows NT may be different than in 16-bit Windows 3.1. Also, the ability to directly access hardware is not available in Windows NT. If your application directly accesses hardware, contact your vendor for a Windows NT-specific version of the application. Additional reference words: 3.10 wow KBCategory: KBSubcategory: 16AP ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 1993.