16-Bit Application Stops Responding When Run on WinNT 4.0 (163431)



The information in this article applies to:

  • Microsoft Windows NT Workstation 4.0
  • Microsoft Windows NT Server 4.0

This article was previously published under Q163431

SYMPTOMS

When you run a 16-bit application on Windows NT 4.0, a second 16-bit application created by the first 16-bit application stops responding. This same application will run fine on Windows 3.1, Windows 95, and Windows NT 3.51.

CAUSE

The main application created (spawned) a child 16-bit task and then entered a loop issuing Yield() calls until the newly created task set a global variable to True. A race condition existed in which the WOW made an incorrect assumption about the task, calling the yield function after a new 16-bit task was created.

STATUS

Microsoft has confirmed this to be a problem in Windows NT version 4.0. This problem was corrected in the latest Microsoft Windows NT 4.0 U.S. Service Pack. For information on obtaining the service pack, query on the following word in the Microsoft Knowledge Base (without the spaces):

S E R V P A C K


Modification Type:MajorLast Reviewed:8/9/2001
Keywords:kbbug KB163431