Jump to content

What to Do When a Program Crashes in Windows 7

0
  adfm's Photo
Posted May 26 2010 03:01 PM

Isn't it annoying when a program crashes? You're working one moment and then the next thing you know the program won't respond. Your blood pressure rises and you start to get nervous. Panic starts to set in. What do you do? This excerpt from David A. Karp's Windows 7 Annoyances will give you a few options.


Error messages are passé. When a program crashes, Windows doesn’t necessarily tell you that it has crashed. Rather, the program simply “stops responding.” This means that you can’t click any of the controls in its interface, save your open document, nor (most importantly) close and reopen it easily. Sure, Windows usually lets you move it around the screen, and sometimes even click the Close button to end the task, but that’s about it. But these are also symptoms of an application that’s simply busy, caught up in the last task you asked it to perform.

Note

Annoyed that Windows insists on “searching for a solution” after you close a crashed program? Although it’s true that Windows finds solutions to some problems you report—if not now, then eventually—it’s unlikely that Microsoft will come up with a solution faster than the developer of the crashed application will release an update. To turn off the “searching...” box, making it so you have only one window to close instead of two, open the Action Center in Control Panel. Click the Change Action Center settings link on the left and then click the Problem reporting settings link below. Select the Never check for solutions option and click OK.

Either way, triggered by your first attempt to use a crashed or busy program, Windows turns the whole window pale while trying to communicate with it. If you want to know whether a program has reached this state without triggering it with a click, just try moving the mouse over the edges of the window; if the mouse cursor doesn’t change to the familiar “resize” arrows (and given that it’s a resizable window), the program has probably stopped responding.

So, how do you tell the difference between a crashed program and a busy one? Well, Windows can’t even do that reliably, instead showing you a window that looks like the one in Figure 6.6 when you try to close it. The solution is to be patient and use your best instincts.

Figure 6.6. When you see this message, it means that Windows doesn’t know whether the program you’re trying to use has crashed, or is simply busy

Attached Image

But patience only gets you so far. After waiting an intolerable length of time, say, three to four seconds, one has to wonder whether the program will ever start responding. If you’re through waiting, you can go ahead and elect to close the program, a strategy that works some of the time.

Note

If an application window is visible, it’s easy enough to click the small × button on the application title bar to close it. But if it’s minimized, or if the main window isn’t responding at all, right-click the program’s button on the taskbar and select Close.

If closing doesn’t help, or if, after closing a window, you can’t open another one, then it’s time to pay a visit to Task Manager, shown in Figure 6.7.

Figure 6.7. Choose the Processes tab in Task Manager to list all the programs running on your PC, a necessary step if one of them has crashed and you need to close it (the hard way)

Attached Image

There are three ways to start Task Manager:

Taskbar

Right-click an empty area of the taskbar (or the clock) and select Start Task Manager.

Keyboard

Press the Shift-Ctrl-Esc keys together.

Three-finger salute

If the taskbar and keyboard methods don’t work, then Windows itself is crashed or busy. In this case, press Ctrl-Alt-Del to blank the screen and show a special administrative menu, at which point you can click Start Task Manager to launch it.

Although the Applications tab is inviting and easy to understand, it’s not too helpful for this purpose. Choose the Processes tab, click the Show processes from all users button at the bottom (present only if UAC is in effect), and then locate the crashed program in the list.

Note

There’s a funky bug in Windows 7’s Task Manager, but fortunately, it’s one that’s easy to fix. If your Task Manager appears with no title bar, menu, or tabs, just double-click the thin gray border around the main list to bring them back. If that doesn’t help, or if your mouse is unavailable, open the Registry Editor, navigate to HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\TaskManager and delete the TaskManager key.

To find the program to close, sort the list. You can sort the list alphabetically by filename (e.g., explorer.exe for Windows Explorer) by clicking the Image Name column header. Or, sort by application title by clicking the Description header. To show the full path and filenames for each running process, open the View menu, click Select Columns, and turn on the Image Path Name option.

But for most hung applications—also known as “frozen” or “locked up”—it’ll be most entertaining to sort by exactly how busy the program is. Click the CPU column header twice (so its little arrow is pointing down) to sort by processor usage (a percentage from 0 to 99), and the crashed program will usually leap to the top of the list.—its CPU usage will usually be in the high 80s! (Or, if you have a dual-core processor, the CPU usage for a crashed program will be closer to 50.)

Just highlight the program in the list and click End Process. Only after you do this will you be able to reopen the application.

Note

Windows Vista came with a nifty tool called the Windows Defender Software Explorer, which was unfortunately removed for Windows 7. In its absence, you can use Task Manager to list processes in memory, or System Configuration (msconfig.exe) and the free Autoruns tool to list programs that start with Windows.

Programs commonly running in the background

Windows is basically just a collection of components, and at any given time, some of those components may be loaded into memory and listed as running processes in Task Manager. In fact, you’ll probably see more programs running than you expected, especially after you click the Show processes from all users button.

If you see a program you don’t recognize, don’t panic; it’s not necessarily malware, but then again, it’s not necessary legitimate. See Table 6.1 for a list of those items commonly found on most Windows 7 systems.

Table 6.1. Processes you should expect to find running on your system

Process

Description

csrss.exe

Called the Client Server Runtime Process, csrss.exe is an essential Windows component, as it handles the user-mode portion of the Win32 subsystem. It is also a common target for viruses, so if this process appears to be consuming a lot of CPU cycles on your system, you should update and run your antivirus software.

explorer.exe

This is simply Windows Explorer, which is responsible for your desktop and Start menu. If this program crashes or is closed, Windows will usually start it again automatically. If you see more than one instance of explorer.exe, it means that folder windows are being launched as a separate process, as explained in Chapter 2, Shell Tweaks. If Windows Explorer crashes and you have to end the process in Task Manager, select New Task from the File menu, type explorer, and click OK to get your desktop and Start menu back.

lsass.exe

This is the Local Security Authority subsystem, responsible for authenticating users on your system.

rundll32.exe

This program, the purpose of which is to launch a function in a DLL as though it were a separate program, is used for about a million different things in Windows. Since it’s simply a loader for other programs, it’s neither necessarily harmful nor benign.

services.exe

This is the Windows NT Service Control Manager, and works similarly to svchost.exe, described shortly. The difference is that services.exe runs services that are standalone processes while svchost.exe runs services from DLLs.

smss.exe

Called the Windows NT Session Manager, smss.exe is an essential Windows component. Among other things, it runs programs listed in the HKEY_ LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager key in the Registry.

spoolsv.exe

This handles printing and print spooling (queuing).

svchost.exe

This is the application responsible for launching most services (listed in services.msc).

System

This is the System process (ntoskrnl.exe), an essential Windows component.

System Idle Process

The “idle” process is a 16k loop, used to occupy all CPU cycles not consumed by other running processes. The higher the number in the CPU column (99% being the maximum), the less your processor is being used by the currently running programs.

winlogon.exe

This process manages security-related user interactions, such as logon and logoff requests, locking or unlocking the machine, changing the password, and the remote Registry service.

wmiprvse.exe

This is responsible for WMI (Windows Management Instrumentation) support in Windows 7, also known as WBEM. Like csrss.exe, above, wmiprvse.exe is a common target for viruses, so if this process appears to be consuming a lot of CPU cycles on your system, you should update and run your antivirus software.


Warning

Naturally, you shouldn’t interfere with the components Windows requires to operate while you’re looking for errant programs or programs you can get along without. And just because something isn’t listed here doesn’t mean it isn’t required by your system, so use caution when ending a process with which you’re unfamiliar.

Windows 7 Annoyances

Learn more about this topic from Windows 7 Annoyances.

Windows 7 may be faster and more stable than Windows Vista, but that's a far cry from problem-free. With Windows 7 Annoyances, you'll learn how to deal with a wide range of nagging problems before they deal with you. Annoyances.org founder David Karp offers you the tools to fix all sorts of Windows 7 issues, along with solutions, hacks, and timesaving tips to make the most of your PC.

See what you'll learn


Tags:
0 Subscribe


0 Replies