WINDOWS SHUTDOWN TROUBLESHOOTING:
15 Steps

[The following article is based on many sources, including Microsoft Knowledge Base articles and input from individuals in the Microsoft news groups. In particular, most Microsoft MVPs in the Desktop Systems section have contributed to the contents and form of this article as it has evolved -- they get credit for what is right with this article, and I'll take the blame for what's wrong with it. My thanks to all. Please note that you use this information only at your own risk -- I'm not personally able to verify, in advance, the consequences of any action on every computer of every type used by every user. -- Jim Eshelman]

Shutdown problems in Windows 95 and 98 can be caused by many factors including, but not limited to: a damaged exit sound file; incorrectly configured or damaged hardware; conflicting programs, or an incompatible, damaged, or conflicting device driver. This article can be used to troubleshoot the possible causes.


NOTE ON WINDOWS 98 SECOND EDITION: There is a widespread shutdown problem with Windows 98 Second Edition that has, at present, no reliable solution. Microsoft is giving priority to resolving it. The following troubleshooting steps should be tried, but might not work. A patch is expected soon. Some fixes have been posted that have limited applicability on some computers, but nothing so far has amounted to a general solution. This article does not, therefore, in its present form, attempt to address the general Win98 SE shutdown problem comprehensively. (A few Win98 SE points are summarized near the end.)

WIN98 SE UPDATE (8/11): In a statement to the press published in Win98 Insider August 11, Microsoft program manager Shawn Sanford indicated that Microsoft hopes to issue a patch on its Web site by Friday, August 20.


FIRST STEP: DISABLE FAST SHUTDOWN
(Skip this step if you are using Windows 95)

Launch MSCONFIG. Click Advanced. Place a check mark in the box next to "Disable fast shutdown." (NOTE: If the box is already marked, go to SECOND STEP.) Click OK, then OK again. Test Windows shut down by restarting the computer. (For proper troubleshooting, click Start | Shut Down | Restart | OK. Give Windows three minutes to complete the process before concluding that it is hung. This same procedure is referred to in the following steps as, "Test Windows shut down.") Disabling fast shutdown may solve the problem; but if it doesn't, go on to SECOND STEP.

NOTE: This problem may exist on Win98 if your computer uses Advanced Configuration and Power Interface (ACPI) and the Fast Shutdown feature is disabled. To obtain a supported fix for this problem from Microsoft, see the article "Computer Stops Responding When You Try to Shut It Down."


SECOND STEP: STARTUP/SHUTDOWN TROUBLESHOOTING WIZARD

A shutdown troubleshooter is built right into Windows 98 as well. It will take you through many, but not all, of the steps recommended below. Some people may prefer this kind of "walk-through" on-screen troubleshooter. To access it, click Start | Help. In the window type Troubleshooting. Click on the Troubleshooting entry in the menu. Scroll down the new list provided and click on "Shutdown and Startup Troubleshooter."

Microsoft also has an on-line version of this Startup/Shutdown Troubleshooting Wizard.

You can try one or the other version of this troubleshooter as your next option if you wish; or simply continue through the steps that follow.


THIRD STEP: RULE OUT DAMAGED EXIT SOUND FILE

In Control Panel, double-click Sounds. In the Events box, click Exit Windows. In the Name box, click None. Click OK. Test Windows shut down. If Windows does not hang, the problem may be a corrupt sound file. Restore the file from your Windows disk or wherever you obtained it and then test Windows shut down.


FOURTH STEP: RULE OUT CLOGGED TEMPORARY FILE FOLDERS

Manually deleting the contents of various temporary file folders may solve the shutdown problem. Though these files can be relocated on a given system, their default locations are usually on the C: drive. Folders you might want to manually clean include: TEMP, Temporary Internet Files, and MSDOWNLD.TMP.


FIFTH STEP: RULE OUT AUTOEXEC.BAT OR CONFIG.SYS COMMAND LINE PROBLEMS

(If there is neither an AUTOEXEC.BAT nor CONFIG.SYS file, or if both are empty, go to SIXTH STEP. Otherwise:) Rename AUTOEXEC.BAT and CONFIG.SYS to AUTOEXEC.TMP and CONFIG.TMP and test Windows shut down. If it hangs, rename the files to the original names and go to SIXTH STEP. If the system does not hang, rename the files and proceed with these steps:

Restart Windows and bring up the Boot Menu. Choose "Step-By-Step Confirmation." Press Y at each of the following prompts if it occurs (press N for any other prompts):

After Windows finishes loading, test Windows shut down. If the system hangs, go to STEP SIX. If it shuts down properly, the problem may be caused by a command line in the AUTOEXEC.BAT or CONFIG.SYS file.

To determine which line is causing the problem, follow these steps: Restart Windows, bringing up the Boot Menu as before. Press Y for each of the prompts listed above, plus one additional command. Press N for all other prompts. (You will cycle through the additional lines, selecting a different additional command each time until you have gone through them all.) Each time, after Windows finishes loading, test Windows shut down. Repeat the above until the shutdown problem occurs.

When the shutdown problem occurs, you have identified the command causing the problem. Disable the command (using SYSEDIT to edit the file containing the command, or, in Win98, MSCONFIG to remove the check mark in front of the problematic item).

SIXTH STEP: RULE OUT VIRTUAL DEVICE DRIVER / SYSTEM.INI PROBLEMS

Launch SYSEDIT. Click on the SYSTEM.INI window. Examine the section [386Enh] and place a semicolon (;) at the beginning of each line that begins with "DEVICE=" and ends with ".386." Save the changes and exit SYSEDIT. (NOTE: In Win98 you can use MSCONFIG and merely uncheck such lines in the [386Enh] section.) Reboot, then test Windows shut down. If Windows hangs, restore the SYSTEM.INI file to its original configuration. If Windows does not hang during shutdown, a virtual device driver may be causing the problem. Contact the driver's manufacturer for assistance.


SEVENTH STEP: RULE OUT WIN.INI COMMAND LINE PROBLEMS

Launch SYSEDIT. Click on the WIN.INI window and look for any lines beginning with LOAD= or RUN=. Place a semicolon (;) at the beginning of these lines if they have entries following the equal (=) sign. Save the changes to the WIN.INI file and exit SYSEDIT. If you did not make changes, go to STEP EIGHT; otherwise, reboot and then test Windows shut down. If Windows continues to hang, remove the semicolons, save the file and go to STEP EIGHT. If Windows does not hang, one of the disabled program entries may be to blame. To determine the problem program, re-enable them one at a time by removing the semicolon and resaving the file. After each program is enabled, test Windows shut down.


EIGHTH STEP: RULE OUT PROGRAMS LOADED FROM STARTUP FOLDER

Restart Windows without any Startup folder programs loading.

FOR WIN98: Use MSCONFIG. Click Selective Startup. Remove the check mark from in front of "Load startup group items." Restart Windows. FOR WIN95: Restart the computer and, as soon as the Windows desktop wallpaper appears, press and hold the SHIFT key until Windows 95 finishes loading. After doing one of these procedures, test Windows shut down. If Windows hangs, go to NINTH STEP. If Windows shuts down properly, determine the culprit by ruling out the programs one-by-one:

FOR WIN98: Use MSCONFIG. On the Startup tab, place a check mark next to the first program item listed. Click OK, then OK. FOR WIN95: Manually remove all but one of the shortcut icons from the Startup folder.

FOR BOTH WIN95 & WIN98: Test Windows shutdown. If Windows shuts down properly, then the program that remained is not causing the problem. Restore another startup program per the appropriate method above. After each program is restored, test Windows shut down. Continue re-enabling programs until you either find the problem program (there may be more than one) or all programs have been restored.

IMPORTANT WIN95 NOTE: Holding down the SHIFT key as soon as Windows begins to load will launch Win95 in Safe Mode. (If you wait for the desktop wallpaper to appear, it only suppresses Startup items.) If Safe Mode is used, not only are items in the Startup folder not loaded when this happens, but Windows also uses only basic system drivers, does not launch startup programs normally launched from the Registry, does not execute CONFIG.SYS or AUTOEXEC.BAT (already tested above), does not launch certain sections of the System.ini file (already tested above), does not process the HIMEM.SYS and IFSHLP.SYS files, and does not load DoubleSpace or DriveSpace if present. Therefore, for Win95 computers, if (1) all previous troubleshooting steps have passed, and (2) this step causes proper shutdown behavior after booting in Safe Mode, and (3) removing all items in the Startup folder then rebooting in normal mode does not produce proper shutdown behavior, then Registry startup items, HIMEM.SYS, IFSHLP.SYS, and DoubleSpace or DriveSpace must be considered as likely causes of the problem. Detailed instructions for troubleshooting these items are not given in the present article; if you do not know how to test these steps, please seek help in the online peer support newsgroups for these specific tasks.


NINTH STEP: RULE OUT EMM386-RELATED MEMORY CONFLICTS

A memory conflict sometimes exists when Emm386.exe is not loaded from the CONFIG.SYS file. To test for this, launch SYSEDIT. Click the CONFIG.SYS window. In the CONFIG.SYS file, make sure the following lines exist in this order, at the very beginning of the file:

DEVICE=C:\WINDOWS\HIMEM.SYS
DEVICE=C:\WINDOWS\EMM386.EXE NOEMS X=A000-F7FF
DOS=HIGH,UMB

If you do not have a CONFIG.SYS file, create one with these three lines. Save the modified CONFIG.SYS and close SYSEDIT. Reboot, then test Windows shut down. If the system hangs, restore your CONFIG.SYS file to its original configuration. If it shuts down properly, see the following Microsoft Knowledge Base article: "Locating and Excluding RAM/ROM Addresses in the UMA"


TENTH STEP: RULE OUT ADVANCED POWER MANAGEMENT (APM) PROBLEMS

(Not all computers have APM features. If yours is one of them, go to ELEVENTH STEP. Otherwise:) Right-click on My Computer, select Properties, and click the Device Manager tab. Double-click the System Devices branch to expand it. Double-click Advanced Power Management Support in the device list. Click the Settings tab. Click the Enable Power Management check box to clear it. Click OK until you return to Control Panel. (NOTE: This box does not exist in Win98 SE. Disable APM from Control Panel | Power.) Reboot, then test Windows shut down. If Windows shuts down properly, the problem may be caused by APM, so contact the computer's manufacturer for assistance. NOTE: For additional information about shutdown problems with APM enabled, see Microsoft Knowledge Base article: "Shutdown Hangs After 'Please Wait While...' Screen"


ELEVENTH STEP: RULE OUT WINDOWS FILE SYSTEM SETTINGS

Right-click on My Computer and select Properties. Click the Performance tab. Click File System. Click the Troubleshooting tab. Mark all the check boxes, click OK, click Close and click Yes. Reboot, then test Windows shut down. If Windows shuts down properly, the problem is related to the File System settings. Go back and uncheck each box one at a time. Reboot and test Windows shut down after each change to identify which item is the problem.


TWELFTH STEP: RULE OUT WINDOWS DEVICE DRIVER PROBLEMS

See if a Windows device driver is causing the problem or if an installed device is configured incorrectly or is improperly functioning. Right click on My Computer and select Properties. Click the Hardware Profiles tab. Click the hardware profile you are currently using, and then click Copy. Type "Test Configuration" in the To box. Click OK. Click the Device Manager tab. Double-click any device, then click the Test Configuration check box to clear it. Repeat this step until you have disabled all devices but DO NOT disable any system devices. When you are prompted to restart Windows, select NO. (NOTE: If you disabled a PCI hard disk controller, choose Yes to restart Windows. PCI hard disk controllers cannot be unloaded dynamically.)

Restart Windows and you will receive the following message: "Windows cannot determine what configuration your computer is in. Select one of the following:" Choose Test Configuration from the list of configurations. As Windows starts, you will receive the following error message: "Your Display Adapter is disabled." To correct the problem, click OK to open Device Manager. When the Display Properties dialog box opens, click Cancel. Test Windows shut down. If Windows hangs, go to THIRTEENTH STEP. If Windows shuts down properly, the problem may be caused by a Windows device driver or a device installed in your computer that is configured incorrectly or is not functioning properly.

To determine which device driver or device is causing the problem, go back into Device Manager. Double-click a device that you disabled in step E above, then click the Test Configuration check box to select it. When prompted to restart Windows, click Yes. Test Windows shut down. Repeat this with each device until the shutdown problem recurs. If the problem recurs, you have identified the device or device driver causing the problem.

NOTE: If the shutdown problem is being caused by a Plug and Play device that is configured incorrectly or isn't functioning properly, removing the device from the current hardware profile will correct the problem. After you remove the device from the current hardware profile and restart Windows, the drivers associated with the device are removed from memory and the shutdown problem does not occur. However, as Windows restarts, the Plug and Play device will be detected automatically and installed in the current hardware profile. When you restart Windows a second time, the drivers associated with the device are again loaded in memory and the shutdown problem returns.

If Windows continues to hang on shutdown after you complete steps the above steps, reinstall Windows to a different folder to rule out the possibility of damaged files. If your computer has a Plug and Play BIOS, reinstall Windows using the setup /p i command to rule out a defective Plug and Play BIOS.

If Windows still hangs during the shutdown process after you reinstall it, your computer may have faulty hardware or faulty system components including RAM, the CPU, the motherboard or an internal or external cache. Contact your computer's manufacturer for assistance.


THIRTEENTH STEP: USE BOOTLOG.TXT TO IDENTIFY THE PROBLEM

If Windows still hangs during the shutdown process, create a BOOTLOG.TXT file by restarting the computer, bringing up the Boot Menu and selecting the option to create a boot log. Let Windows load fully and then reboot normally. Examine C:\BOOTLOG.TXT for "Terminate=" entries. These entries are located at the end of the file and may provide clues as to the cause of the problem. Each "Terminate=" entry should have a matching "EndTerminate=" entry on a successful shutdown. If the last line in the BOOTLOG.TXT file is "EndTerminate=KERNEL," Windows shut down successfully.

NOTE: For Win98 SE, if the BOOTLOG.TXT file ends on "EndTerminate=KERNEL" and the computer still hangs at attempted shutdown, there is signficant reason to believe it will be fixed by the CONFIGMG.VXD solution given in the Win98 Second Edition section below. (Tip from Allan Smith.)

If the last line in BOOTLOG.TXT is one of the following entries, check the listed possible cause:

Terminate=Query Drivers: Possible QEMM or other memory manager issue.
Terminate=Unload Network: Possible conflict with real-mode network driver in CONFIG.SYS file.
Terminate=Reset Display: Disable video shadowing. You may also need an updated video driver.
Terminate=RIT: Possible timer-related problems with the sound card or an old mouse driver.
Terminate=Win32: Problem with a 32-bit program blocking a thread. Possibly Microsoft Visual C for Windows.


FOURTEENTH STEP: RULE OUT INTERNAL SYSTEM PROBLEM (Win98 only)

Launch MSCONFIG. On the General tab, click Advanced. Under Settings, click to clear the following check boxes: (1) Disable System ROM Breakpoint; (2) Disable Virtual HD IRQ; (3) EMM Exclude A000-FFFF. Click OK. Restart the computer. If the computer restarts correctly, repeat the above steps, restoring one of the disabled boxes each time. Continue repeating these steps, selecting an additional check box each time, until your computer fails to restart correctly. Once your computer fails to restart correctly, repeat the above steps again, but click to select all the check boxes except the last check box that you selected; click to clear this check box.


FIFTEENTH STEP: OTHER SOLUTIONS

(1) The PC Speaker driver (SPEAKER.DRV) can cause Windows to stop responding at shutdown or startup. To disable the PC Speaker driver, disable the "wave=speaker.drv" line in the SYSTEM.INI file, then restart the computer.

(2) On a computer with a BIOS that expects IRQ 12 to be in use by a PS/2-style mouse port, but instead has a software-configurable hardware device (such as a Plug and Play adapter) using IRQ 12, Windows can hang on shutdown. To work around this problem, reserve IRQ 12 in Device Manager, or change the IRQ for the software-configurable device in Device Manager. (You may also want to consider upgrading the BIOS in your computer to a later version.) To reserve an IRQ with Device Manager: In Control Panel, double-click System. On the Device Manager tab, double-click Computer. On the Reserve Resources tab, click the Interrupt Request (IRQ) option, and then click Add. In the Value box, click the IRQ you want to reserve. Click OK until you return to Control Panel.

(3) If a network card is installed in the computer, do the following: Remove the network in Device Manager. Shut down Windows. Physically remove the network card. Restart Windows. Shut down Windows (observe whether it shuts down normally). Reinstall the network card. Restart Windows and let it detect the card as new hardware. (This has been known to work in at least one case in Win98 SE, and should be tried for other versions of Windows9x also.)

(4) If your anti-virus software is set to scan your floppy drives on shutdown, this can result in various symptoms including the computer hanging on shutdown. Often (but not always) a clue will be that the floppy drive light comes on during shutdown. The solution is to disable this particular feature in the anti-virus program.

(5) If the previous steps do not resolve the problem, try resetting CMOS settings back to factory defaults. For information about changing CMOS settings in your computer, consult the computer's documentation or manufacturer. WARNING: Before you reset the computer's CMOS settings back to the factory defaults, make sure to write down the CMOS settings. WARNING: Do not try this step unless you know what you are doing -- mistakes in this step can result in your computer not working at all!


WINDOWS WITH INTERNET EXPLORER SCENARIOS:

(1) If Internet Explorer 4.01 is installed, and one or more network drives are mapped on your computer with the Desktop Update component installed, update to Internet Explorer 5 or apply the IE4.01 Service Pack 1.

(2) If IE (any version) is installed and your user profile contains a large Temporary Internet Files folder (cache), Windows can hang on shutdown. To work around this behavior, use any of the following methods:


WINDOWS 98 ONLY SCENARIOS:

(1) If you are using Cisco TCP/IP Suite 100 as your TCP/IP stack, remove it and install Microsoft TCP/IP. For step-by-step instructions, see the Microsoft Knowledge Base article "Computer Stops Responding When Shutting Down Windows 98."

(2) If you are using Norton AntiVirus with the Auto-Protect feature enabled, disable Auto-Protect, then obtain the latest LiveUpdate for NAV from Symantec's web site. If these steps do not resolve the issue, Symantec recommends that (after backing up the Registry!) you delete the following Registry line:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\control\Shutdown\Exclusion List
See the Symantec support article on this topic.

(3) If your computer hangs at shutdown and it either uses Advanced Configuration and Power Interface (ACPI) and the Fast Shutdown feature is disabled, or it contains a Matsonic BIOS and the "USB Function for DOS" option is enabled in the BIOS, then you may receive one or both of the following messages: Windows is shutting down. [-OR-] It's now safe to turn off your computer. See the Knowledge Base article, "Computer Stops Responding When You Try To Shut It Down" for details on a supported fix that corrects this problem. It has not been fully regression tested and should be applied only to computers experiencing this specific problem. Also see "Windows Startup and Shutdown Issues."


WINDOWS 98 SECOND EDITION ONLY SCENARIOS:

(0) FAST SHUTDOWN IN WIN98 SE. Enabling Fast Shutdown in Win98 SE, on most machines, will cause the computer to restart when shutdown is selected, rather than shut down. This is not by design, but is pretty predictable and standard in Win98 SE. FYI.

(1) BIOS UPDATE. Check with your computer or BIOS manufacturer to see if there are any BIOS updates available for your system, and install them. If your BIOS is out of date,Win98 SE may hang while attempting to shut down, or may restart instead of shut down. This is because Win98 SE includes updates for Advanced Configuration and Power Interface (ACPI), OnNow, and Advanced Power Management (APM) and may require the latest BIOS upgrade.) (For example, this problem is known to exist with the Intel AL440LX motherboard using Phoenix BIOS version P07. A new BIOS version, P12 or later, is needed. Similar problems occur with a D-Link DFE 530TX network adapter installed; the solution is to obtain and install an updated driver. Contact D-Link.)

(2) BYPASSING PLUG-AND-PLAY DETECTION. Where a BIOS update does not solve the problem, or where a user is unwilling or unable to obtain a BIOS update, Microsoft recommends reinstalling Windows using the following commandline switch:

setup /p i

This switch tells Setup not to report the existence of a Plug and Play BIOS. It also disables ACPI support. It is useful on computers that have a Plug-and-Play BIOS that is not reported in the MACHINE.INF file. Microsoft recommends this approach as the preferred alternative to the CONFIGMG.VXD or other solutions given below. (Of course, if you do not wish to begin with a reinstallation of Windows, then you may wish to try some of the solutions below first -- your choice, as always.) If you later update the BIOS of your computer, running setup /p j will reverse this to enable the Plug-and-Play and ACPI functionality once more. NOTE: Either of these Windows installations can be done atop an existing version. There will, generally, be no need to do a clean install in order to apply these fixes.

(3) SET IRQ FOR VIDEO ADAPTER. Microsoft has found that the shutdown problem can occur if your video adapter requires an interrupt request (IRQ) in MS-DOS mode, but your computer's BIOS does not assign one to it. Upgrading the BIOS may be an important early step in solving the problem. MS advises one of the following resolutions be used:

(4) DISABLING APM, ENABLING ACPI. On several Win98 SE machines, disabling Advanced Power Management (APM) and enabling Advanced Configuration and Power Interface (ACPI) has solved the problem. Sometimes this solution was worked on its own; in other cases it has worked only in combination with other actions; and in still others it has not worked at all.

(5) PCI BUS, IRQ STEERING, DEVICE ENUMERATION. MS-MVP Attila Szabo ("MrScary") found, in some cases, that IRQ steering and device enumeration issues were the cause of these shutdown problems: Right click on My Computer and select Properties. Click the Device Manager tab. Click "View Devices by type" and open "System Devices" found at the bottom of the device tree. Highlight "PCI bus" and click on the Properties button. Adjust or disable the settings under the IRQ Steering and/or the Settings tab to get the desired results. As a precaution, note how you found these settings before you attempt to change them. FIRST try changing the Device Enumeration under the 'Settings' tab from Hardware to Bios. If this doesn't solve the problem, then experiment with enabling or disabling all the combinations of possible settings to try to get the desired results. (One popular variation is to clear the checkmark, on the IRQ Steering tab, from the last box, "Get IRQ Table From Real Mode PCIBIOS 2.1 Call.") Make sure you do a full reboot after every change while testing. UPDATE NEWS: The "news on the street" is that a forthcoming patch from Microsoft directly addresses this exact issue by replacing PCI-related components of the operating system.

(6) DISABLING PLUG-AND-PLAY. At times, the BIOS setting for PnP Aware OS (a setting you may or may not have), also has a bearing on these settings. Bill Snyder has reported that the shutdown problem in SE, as well as several IRQ conflicts he was experiencing, were resolved by the following steps (which cause the computer to pretend that Win 98 SE is not a Plug-and-Play operating system):

(7) CONFIGMG.VXD. Clayton Burton has found that replacing the Win98 SE copy of CONFIGMG.VXD with the copy from the pre-SE (original) version of Win98 will solve the underlying problem. Several people have reported success with this approach. If this approach is used, the file should be extracted to the C:\WINDOWS\SYSTEM\VMM32 folder. (CONFIGMG.VXD is the Windows configuration manager virtual device. The Win98 Original Edition copy will be version 4.10.1998, 115,665 bytes in size. The Win98 SE copy will be version 4.10.2222, 125,057 bytes in size.)

(8) SHUTTING DOWN WITHOUT THE MOUSE. Len Mattix found that, on two computers, if he shut down with the mouse he has the hangs, but if he shuts down with Alt+F4 he doesn't. (Notice this avoids both the mouse and the Start Menu.) NOTE: This may be an indirect form of the PCI issue discussed above, and not a separate issue by itself. This solution also suggests that perhaps shutting down with some other method avoiding the Start Menu might work, such as creating a shortcut with the command line: C:\WINDOWS\RUNDLL32.EXE user,exitwindows

(9) FAST SHUTDOWN REVISITED -- LITERALLY! At least one person has solved this problem by enabling Fast Shutdown from the disabled default, shutting down and discovering this didn't work (causing the computer to restart instead of shut down), and then enabling Fast Shutdown again. This time, it worked and the computer shut down properly.