Windows 7 : Rolling Back to a Stable State with System Restore

10/12/2010 3:45:46 PM

The System Restore utility provides controlled access to snapshots created by the System Protection feature. It can't perform miracles—it won't bring a dead hard drive back to life, unfortunately—but it can be a lifesaver in any of the following situations:

  • You install a program that conflicts with other software or drivers on your system. If uninstalling the program doesn't cure the problem, you can restore your system configuration to a point before you installed the program. That should remove any problematic files or registry settings added by the program.

  • You install one or more updated drivers that cause performance or stability problems. Rather than using the Roll Back Driver command in Device Manager, use System Restore to replace the new, troublesome driver (or drivers) with those that were installed the last time you saved a restore point.

  • Your system develops performance or stability problems for no apparent reason. This scenario is especially likely if you share a computer with other family members or coworkers who have administrator accounts and are in the habit of casually installing untested, incompatible software and drivers. If you know the system was working properly on a certain date, you can use a restore point from that date, undoing any changes made since then and, if all goes well, returning your system to proper operation.

Warning: Don't count on System Restore to protect you from viruses, worms, Trojan horses, and other malware. Use a reliable and up-to-date antivirus program.

1. Using System Restore

The quickest way to get to System Restore is to type rstrui at a command prompt. Here are a few alternatives:

  • Open the Start menu, click All Programs, click Accessories, click System Tools, and click System Restore.

  • On the System Protection tab of the System Properties dialog box, click System Restore.

  • In the Start menu search box, type restore and then, in the list of search results, click the System Restore shortcut under the Programs heading.

  • Open Control Panel, type system restore in the Search box, and click Restore System Files And Settings From A Restore Point.

If you're running under a standard user account, you'll need to enter an administrator's credentials in a UAC dialog box to continue.

When the System Restore wizard appears, it might recommend the most recent restore point. To see a complete list of available restore points, select Choose A Different Restore Point and click Next. If the restore point you're looking for is older than the oldest entry in the list, click Show More Restore Points to see the complete, unfiltered list, as shown in Figure 1.

Figure 1. You must select the check box at the bottom of this dialog box to see more than the five most recent restore points.

What impact will your choice of restore points have? To see a full list of programs and drivers that will be deleted or restored, select the restore point you're planning to use, and then click Scan For Affected Programs. That displays a dialog box like the one shown in Figure 2, highlighting every change you've made since that restore point was created. This capability is new in Windows 7.

Figure 2. Check this report before using System Restore to roll back to an earlier configuration so that you know what changes the operation will make.

After selecting a restore point, click Next to display a confirmation dialog box like the one shown in Figure 3. The summary shown here lets you know which drives will be affected and gives you a chance to create a password reset disk—an important precaution if you've recently added or changed a password for your user account.

When you're satisfied, click Finish. That takes you to one more confirmation prompt, advising you that the restore process must not be interrupted. Answer Yes, and the system creates a new restore point, and then begins replacing system files and registry settings with those in the previous restore point you selected. As part of the restore process, your computer will restart and various messages will appear, all counseling you to be patient and not to interfere with the goings-on.

When System Restore reinstates a previously saved configuration using a restore point, your data files—documents, pictures, music files, and the like—are not tampered with in any way. (The only exception is if you or a program created or saved a file using file name extensions from the list of monitored extensions, as described in the previous section.) Before System Restore begins the process of returning your system to a previous restore point, it creates a new restore point—making it easy for you to return to the present if this time machine doesn't meet your expectations.

Figure 3. Review this description carefully. After you begin the system restore operation, it cannot be interrupted.

When the process is complete and you have logged back on to Windows 7, do some testing to see if the restoration has improved the stability of your system. If it has not and you want to return the system to the state it was in before you restored it, retrace your steps to System Restore. At or near the top of the list of available restore points, you will find one labeled Undo: Restore Operation. Choose that one and you're back where you started.

2. System Restore Do's and Don'ts

You don't have to be a science fiction aficionado to appreciate the hazards of time travel. Here are some to be aware of:

  • If you create a new user account and then use System Restore to roll back your system configuration to a point before the new account was created, the new user will no longer be able to log on, and you will receive no warning. (The good news is that the new user's documents will be intact.)

  • System Restore does not uninstall programs, although it does remove executable files, dynamic-link libraries (DLLs), and registry entries created by the installer. To avoid having orphaned program shortcuts and files, view the list of programs and drivers that will be affected when you return to the restore point you're about to roll back to. If you don't want the program anymore, uninstall it in the normal way before running the restore operation. If you want to continue using the program, reinstall it after the restore is complete.

  • Any changes made to your system configuration using the Windows Recovery Environment are not monitored by System Protection. This can produce unintended consequences if you make major changes to system files and then roll back your system configuration with System Restore.

  • Although you can restore your system to a previous configuration from Safe Mode, you cannot create a new restore point in Safe Mode or in the Windows Recovery Environment. As a result, you cannot undo a restore operation that you perform in either of these ways. You should use System Restore from Safe Mode or the Windows Recovery Environment only if you are unable to start Windows normally to perform a restore operation.

  •  Windows 7 : Configuring System Protection Options
  •  Windows 7 : Using the Windows Backup Program
  •  Active Directory Federation Services (ADFS)
  •  Active Directory Rights Management Service (RMS)
  •  Active Directory Lightweight Directory Service (LDS)
  •  Windows Server 2003 : Securing and Troubleshooting Authentication
  •  Windows Server 2003 : Managing User Profiles
  •  Windows Server 2003 : Creating Multiple User Objects
  •  Windows Server 2003 : Creating and Managing User Objects
  •  Understanding Application Domains
  •  Building and Deploying Applications for Windows Azure : Activating the Storage Account Account
  •  Deploying Applications to Windows Azure
  •  Building and Deploying Applications for Windows Azure : Creating a Demo Project
  •  Network Programming with Windows Sockets : Datagrams
  •  Network Programming with Windows Sockets : An Alternative Thread-Safe DLL Strategy
  •  Network Programming with Windows Sockets : A Thread-Safe DLL for Socket Messages
  •  Network Programming with Windows Sockets : In-Process Servers
  •  Network Programming with Windows Sockets : A Socket-Based Server with New Features
  •  Network Programming with Windows Sockets : A Socket-Based Client
  •  Network Programming with Windows Sockets : A Socket Message Receive Function
    Top 10
    Exchange Server 2010 : Administering Mailbox Content - Monitor and Restrict Communication (part 2) - Apply Common Monitoring and Restriction Scenarios
    Windows Mobile Security - Local Data Storage
    Building a WPF Application without XAML (part 1)
    Backing Up and Restoring a SharePoint Environment : Using the Recycle Bin for Recovery
    Installing Exchange Server 2010 : Check the Exchange installation
    Installing Windows Server 2008 R2 and Server Core : Preplanning and Preparing a Server Installation
    Developing Applications for the Cloud on the Microsoft Windows Azure Platform : Accessing the Surveys Application - Geo-Location
    Windows Server 2008 : DHCP/WINS/Domain Controllers - Exploring Advanced DHCP Concepts
    SharePoint 2010 : Outlining the Need for the Forefront Edge Line for SharePoint Environments
    Most View
    Microsoft Malicious Software Removal Tool
    iPhone 3D Programming : Holodeck Sample (part 3) - Handling the Heads-Up Display
    Programming with DirectX : Shading and Surfaces - Implementing Texture Mapping (part 1) - 2D Texture Mapping Demo
    Beginning Android 3 : Working with Containers - Tabula Rasa
    IIS 7.0 : Configuration File Syntax
    Exchange Server 2007 : Configure the Client Access Server - Manage OWA
    IIS 7 Components
    Backing Up and Recovering a Computer with Vista
    Building a WPF Application without XAML (part 2)
    Exchange Server 2010 : Utilize the Availability Options for Servers Based on Role (part 2) - Increase Mailbox Database Availability
    Parallel Programming with Microsoft .Net : Futures - Variations
    Handling User Interaction and Events in XAML
    Windows 7 : Exploring and Searching Your Computer - Exploring Your Documents
    Microsoft XNA Game Studio 3.0 : Text and Computers
    MySQL Server Monitoring (part 1) - SQL Commands
    iPhone 3D Programming : Blending and Augmented Reality - Blending Recipe
    Programming with DirectX : Shading and Surfaces - Implementing Texture Mapping (part 2) - Multi Texture Demo
    Microsoft XNA Game Studio 3.0 : Getting Player Input - Reading a Gamepad
    Sharepoint 2007: Create a New Document
    Windows Phone 7 Development : Push Notifications - Introducing the Push Notifications Architecture