Windows 7 troubleshooting tools and tips

Use this chapter excerpt to learn about Windows Diagnostic Infrastructure troubleshooting tools and to learn about disk diagnostics, resource exhaustion detection and more.

Figuring out the cause of a problem is often the hardest part of troubleshooting, but by itself it doesn't do you much good. When you know the source, you need to parlay that information into a fix for the problem. I discussed a few solutions in the previous section, but here are a few other general fixes you need to keep in mind:

About the book:
This chapter excerpt on Troubleshooting and Recovering from Problems (download PDF) is taken from the book Microsoft Windows 7 Unleashed. This book covers key topics for solutions providers, including customizing Windows 7; monitoring, tuning and optimizing Windows performance; securing Windows 7; and using its power tools. Author Paul McFedries introduces new styles and techniques to troubleshoot Windows 7 and automate administration.

  • Close all programs -- You can often fix flaky behavior by shutting down all your open programs and starting again. This is a particularly useful fix for problems caused by low memory or low system resources.
  • Log off Windows 7 -- Logging off clears the RAM and so gives you a slightly cleaner slate than merely closing all your programs.
  • Reboot the computer -- If there are problems with some system files and devices, logging off won't help because these objects remain loaded. By rebooting the system, you reload the entire system, which is often enough to solve many computer problems.
  • Turn off the computer and restart -- You can often solve a hardware problem by first shutting your machine off. Wait for 30 seconds to give all devices time to spin down, and then restart.
  • Check connections, power switches, and so on -- Some of the most common (and some of the most embarrassing) causes of hardware problems are the simple physical things. So, make sure that a device is turned on, check that cable connections are secure, and ensure that insertable devices are properly inserted.

More Troubleshooting Tools

Windows 7 comes with diagnostic tools -- together, they're called the Windows Diagnostic Infrastructure (WDI) -- that not only do a better job of finding the source of many common disk, memory, and network problems, but can detect impending failures and alert you to take corrective or mitigating action (such as backing up your files). The next few sections describe these tools.

Running the Windows 7 Troubleshooters

Windows Vista introduced the idea of the troubleshooter, a Help system component that offered a series of solutions that led you deeper into a problem in an attempt to fix it. In Windows 7, the troubleshooters have been beefed up and given their own home within the Control Panel interface. To see the Windows 7 troubleshooters, select Start, type trouble, and then choose Troubleshooting in the search results. The Troubleshooting window (see Figure 21.5) is divided into several categories (Programs, Hardware and Sound, and so on), each of which offers a few links to general troubleshooting tasks.

Note, too, the Get the Most Up-to-Date Troubleshooters check box at the bottom of the window. If you leave that option activated, and then click a category, Windows 7 queries the Windows Online Troubleshooting service for the latest troubleshooting packs, and then displays the complete list for that category. For example, Figure 21.6 shows the troubleshooters that were available for the Programs category as I wrote this.

If you want to see all the available troubleshooters, click the View All link in the Troubleshooting window.

FIGURE 21.5 Windows 7's new Troubleshooting window offers links to various troubleshooting
categories and tasks.

FIGURE 21.6 Click a category to see its available troubleshooters.

Understanding Disk Diagnostics

A hard disk can suddenly bite the dust thanks to a lightning strike, an accidental drop from a decent height, or an electronic component shorting out. However, most of the time hard disks die a slow death. Along the way, hard disks almost always show some signs of decay, such as the following:

  • Spin-up time gradually slows.
  • Drive temperature increases.
  • The seek error rate increases.
  • The read error rate increases.
  • The write error rate increases.
  • The number of reallocated sectors increases.
  • The number of bad sectors increases.
  • The cyclic redundancy check (CRC) produces an increasing number of errors.

Other factors that might indicate a potential failure are the number of times that the hard drive has been powered up, the number of hours in use, and the number of times the drive has started and stopped spinning.

Since about 1996, almost all hard disk manufacturers have built in to their drives a system called Self-Monitoring, Analysis, and Reporting Technology, or SMART. This system monitors the parameters just listed (and usually quite a few more highly technical hard disk attributes) and uses a sophisticated algorithm to combine these attributes into a value that represents the overall health of the disk. When that value goes beyond some predetermined threshold, SMART issues an alert that hard disk failure might be imminent.

Although SMART has been around for a while and is now standard, taking advantage of SMART diagnostics has, until now, required third-party programs. However, Windows 7 comes with a Diagnostic Policy Service (DPS) that includes a Disk Diagnostics component that can monitor SMART. If the SMART system reports an error, Windows 7 displays a message that your hard disk is at risk. It also guides you through a backup session to ensure that you don't lose any data before you can have the disk replaced.

Understanding Resource Exhaustion Detection

Your system can become unstable if it runs low on virtual memory, and there's a pretty good chance it will hang if it runs out of virtual memory. Older versions of Windows displayed one warning when they detected low virtual memory and another warning when the system ran out of virtual memory. However, in both cases, users were simply told to shut down some or all of their running programs. That often solved the problem, but shutting everything down is usually overkill because it's often the case that just one running program or process is causing the virtual memory shortage.

Windows 7 takes this more subtle point of view into account with its Windows Resource Exhaustion Detection and Resolution tool (RADAR), which is part of the Diagnostic Policy Service. This tool also monitors virtual memory and issues a warning when resources run low. However, RADAR also identifies which programs or processes are using the most virtual memory, and it includes a list of these resource hogs as part of the warning. This enables you to shut down just one or more of these offending processes to get your system in a more stable state.

Microsoft is also providing developers with programmatic access to the RADAR tool, thus
enabling vendors to build resource exhaustion detection into their applications. When such a program detects that it is using excessive resources, or if it detects that the system as a whole is low on virtual memory, the program can free resources to improve overall system stability.

The Resource Exhaustion Detection and Recovery tool divides the current amount of committed virtual memory by the commit limit, the maximum size of the virtual memory paging file. If this percentage approaches 100, RADAR issues its warning. If you want to track this yourself, run the Performance Monitor (see Chapter 6), and add the % Committed Bytes in Use counter in the Memory object. If you want to see the exact commit numbers, add the Committed Bytes and Commit Limit counters (also in the Memory object).

  • See "Using the Performance Monitor," p. 119.

Running the Memory Diagnostics Tool

Few computer problems are as maddening as those related to physical memory defects because they tend to be intermittent and they tend to cause problems in secondary systems, forcing you to waste time on wild goose chases all over your system.

Therefore, it is welcome news that Windows 7 ships with a Windows Memory Diagnostics tool that works with Microsoft Online Crash Analysis to determine whether defective physical memory is the cause of program crashes. If so, Windows Memory Diagnostics lets you know about the problem and schedules a memory test for the next time you start your computer. If it detects actual problems, the system also marks the affected memory area as unusable to avoid future crashes.

Windows 7 also comes with a Memory Leak Diagnosis tool that's part of the Diagnostic Policy Service. If a program is leaking memory (using up increasing amounts of memory over time), this tool will diagnose the problem and take steps to fix it.

To run the Memory Diagnostics tool yourself, follow these steps:

1. Select Start, type memory, and then click Windows Memory Diagnostic in the search results. The Windows Memory Diagnostics Tool window appears, as shown in Figure 21.7.
2. Click one of the following options:

  • Restart Now and Check for Problems -- Click this option to force an immediate restart and schedule a memory test during startup. Be sure to save your work before clicking this option.
  • Check for Problems the Next Time I Start My Computer -- Click this option to schedule a memory test to run the next time you boot.

After the test runs (it takes 10 or 15 minutes, depending on how much RAM is in your system), Windows 7 restarts and you see (for a short time) the Windows Memory Diagnostic Tool icon in the taskbar's notification area. This icon displays the results of the memory text.

FIGURE 21.7 Use the Windows Memory Diagnostic tool to check for memory problems.

If you're having trouble starting Windows 7 and you suspect memory errors might be the culprit, boot your machine to the Windows Boot Manager menu (refer to Chapter 4). When the menu appears, press Tab to select the Windows Memory Diagnostic item, and then press Enter. If you can't get to the Windows Boot Manager, you can also run the Memory Diagnostic tool using Windows 7's System Recovery Options. See "Recovering Using the System Recovery Options" in Chapter 23, "Troubleshooting Startup."

Checking for Solutions to Problems

Microsoft constantly collects information about Windows 7 from users. When a problem occurs, Windows 7 usually asks whether you want to send information about the problem to Microsoft and, if you do, it stores these tidbits in a massive database. Engineers then tackle the "issues" (as they euphemistically call them) and hopefully come up with solutions.

About the author:
Paul McFedries is the president of Logophilia Limited, a technical writing company, and has been writing computer books since 1991. McFedries is the author or coauthor of more than 60 books that have sold more than 3 million copies worldwide. He is also the proprietor of, a website described as "the word lover's guide to new words," which tracks new words that become part of the English language.

One of Windows 7's most promising features is called Problem Reporting (it was called Problem Reports and Solutions in Vista), and it's designed to make solutions available to anyone who goes looking for them. Windows 7 keeps a list of problems your computer is having, so you can tell it to go online and see whether a solution is available. If there's a solution waiting, Windows 7 will download it, install it, and fix your system.

Here are the steps to follow to check for solutions to problems:

1. Select Start, type action, and then click Action Center in the results. (You can also click the Action Center icon in the taskbar's notification area, and then click Open Action Center.) The Action Center window appears.
2. Click Maintenance to view the maintenance-related tools and messages.
3. Click the Check for Solutions link. Windows 7 begins checking for solutions.
4. If you see a dialog box asking whether you want to send more information about your problems, you can click View Problem Details to see information about the problems, as shown in Figure 21.8. When you're ready to move on, click Send Information.

FIGURE 21.8 If Windows 7 tells you it need more information, click View Problem Details to
see the problems.

5. If a solution exists for your computer, you see it listed in the Maintenance section of the Action Center window. Click the solution to install it. By default, when a problem occurs, Windows 7 does two things:

  • It automatically checks for a solution to the problem.
  • It asks whether you want to send more information about the problem to Microsoft.

You can control this behavior by configuring a few settings:

1. Select Start, type action, and then click Action Center in the results. (You can also click the Action Center icon in the taskbar's notification area, and then click Open Action Center.) The Action Center window appears.
2. Click Maintenance to view the maintenance-related tools and messages.
3. Click Settings. The Problem Reporting Settings window appears.
4. In the Choose How to Check for Solutions to Computer Problems window, click Advanced Settings to display the Advanced Settings for Problem Reporting window shown in Figure 21.9.

FIGURE 21.9 Use the Advanced Settings for Problem Reporting window to configure the
Problem Reporting feature.

5. To configure problem reporting, click one of the following options:

  • Automatically Check for Solutions -- Activate this option (it's the default) to have Windows 7 automatically check online for an existing solution to a problem.
  • Automatically Check for Solutions and Send Additional Report Data, If Needed -- Activate this option to have Windows 7 automatically check online for an existing solution to a problem and to automatically send extra information about the problem.
  • Each Time a Problem Occurs, Ask Me Before Checking for Solutions -- Activate this option to have Windows 7 prompt you to check for solutions and to send additional information about the problem.
  • Never Check for Solutions -- Activate this option if you don't want to report problems at all.

6. By default, Windows 7 applies the setting from step 5 only to the current user. If you want to configure the same problem reporting option for every user, click the Change Report Settings for All Users link to open the Problem Reporting dialog box, choose the reporting option you want everyone to use, and then click OK.

If you change your mind and prefer each user to choose his or her own reporting 
option, click the Change Report Settings for All Users link, activate the Allow Each User 
to Choose Settings option, and then click OK.

7. If you don't want Windows 7 to send information about a specific program, click the Select Programs to Exclude from Reporting link to open the Advanced Problem Reporting Settings window. Click Add, locate and select the program's executable file, click Open, and then click OK.
8. Click OK to put the new settings into effect.

Troubleshooting and recovering from problems
   Troubleshooting Windows 7 problems by determining the root cause
   Windows 7 troubleshooting tools and tips
   Troubleshooting Windows 7 issues using online resources

Printed with permission from Sams Publishing. Copyright 2009. Microsoft Windows 7 Unleashed by Paul McFedries. For more information about this title and other similar books, please visit Pearson.

Dig Deeper on Desktop management, sales and installation