Application Access Violation or Hang After Applying SP4
ID: Q195009
|
This article discusses a Beta release of a Microsoft product. The
information in this article is provided as-is and is subject to change
without notice.
No formal product support is available from Microsoft for this Beta
product. For information about obtaining support for a Beta release,
please see the documentation included with the Beta product files, or
check the Web location from which you downloaded the release.
The information in this article applies to:
-
Microsoft Windows NT Server version 4.0
-
Microsoft Windows NT Workstation version 4.0
-
Microsoft Windows NT Server, Enterprise Edition version 4.0
-
Microsoft Windows 2000 Advanced Server
-
Microsoft Windows 2000 Datacenter Server
-
Microsoft Windows 2000 Professional
-
Microsoft Windows 2000 Server
IMPORTANT: This article contains information about editing the registry.
Before you edit the registry, make sure you understand how to restore it if
a problem occurs. For information about how to do this, view the "Restoring
the Registry" Help topic in Regedit.exe or the "Restoring a Registry Key" Help
topic in Regedt32.exe.
SYMPTOMS
After applying Windows NT 4.0 Service Pack 4 (SP4) or Windows 2000, you encounter lockups or access violation (Dr. Watson) errors in an application that appeared to be working fine previously.
NOTE: You might encounter other symptoms or errors in an application that relate to the below-mentioned cause.
CAUSE
The application in question is errantly trying to access a block of memory
that it had previously freed or deallocated. With Windows NT 4.0 Service
Pack 3 (SP3) and earlier, such a reallocation is more likely to succeed,
since the same memory location is more likely to still be available for
reallocation. SP4 and later, however, introduces a change in the heap manager allocation patterns that can result in a failure of such a reallocation request. For more information on this change, please see the following article in the Microsoft Knowledge Base:
Q195008
Heap Manager Change in Service Pack 4
RESOLUTION
WARNING: Using Registry Editor incorrectly can cause serious problems that
may require you to reinstall your operating system. Microsoft cannot
guarantee that problems resulting from the incorrect use of Registry Editor
can be solved. Use Registry Editor at your own risk.
For information about how to edit the registry, view the "Changing Keys and
Values" Help topic in Registry Editor (Regedit.exe) or the "Add and Delete
Information in the Registry" and "Edit Registry Data" Help topics in
Regedt32.exe. Note that you should back up the registry before you edit it.
If you are running Windows NT, you should also update your Emergency
Repair Disk (ERD).
To determine if the above-mentioned change is exposing a problem in the
application in question, proceed with the following steps. If these steps
result in the application generating fewer or no more such errors, contact
the vendor of the application to inquire about an updated version of the
application that resolves this problem.
NOTE: There are other conditions that can cause such errors or hangs that
are not related to this change introduced in SP4 and Windows 2000. If the following
workaround does not correct the problem, query on the error or condition
you are encountering and the application name in the Microsoft Knowledge
Base and/or check with your application vendor for more information on any
other known problems.
- Start Registry Editor (regedt32.exe) and navigate to the following
registry path:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
- With the Image File Execution Options key selected, click Add Key from
the Edit menu to create a new key using the name of the executable file
that starts the process that is encountering the above-noted problem.
An example Key Name entry is "Application.exe". You can leave the Class
field blank. This Key Name entry should not include a path, only the
name of the executable file itself. Refer to the already-existing
Game.exe entry in this location of the registry as an example.
- Select the new key you created in step 2 above and click Add Value from
the Edit menu to create the Value Name: DisableHeapLookaside and Data
Type: REG_SZ. Click OK and then enter 1 in the String field.
Summary for the above entries:
Key Name: application.exe
Class:
Value Name: DisableHeapLookaside
Data Type: REG_SZ
String: 1
- It is not usually necessary to restart the system to see the results.
You can usually simply restart the application because this registry
value is inspected during each process initialization. If the
executable is a service, however, restarting the computer may be
necessary to cause the executable to be properly restarted.
NOTE: This registry setting only affects the process or processes that you
specify.
Additional query words:
4.00 AV stack hang error bug compatguidestability
Keywords :
Version : WINDOWS:2000; winnt:4.0
Platform : WINDOWS winnt
Issue type : kbprb