Windows 7 Feature Focus: Recovery Environment


Windows Vista introduced the Recovery Environment to the world of Windows, and Windows 7 has brought it back with even more improvements. Windows 7's Recovery Environment (also known as System Recovery Options) lives up to its predecessor, adding additional refinements and features. To learn how Recovery Environment makes fixing a balky Windows 7 installation easy, keep reading.

What is the Recovery Environment?

Windows 7's Recovery Environment enables users to perform a variety of system and data recovery tasks on a system that won't boot normally, including:

  • Fixing boot-level startup problems ( Startup Repair )
  • Returning your system to a previous configuration ( System Restore )
  • Recovering your computer with a previously-created system image ( System Image Recovery )
  • Checking for defective memory ( Windows Memory Diagnostic )
  • Running command-prompt programs ( Command Prompt )

In the following sections, we'll help you use each of these options so if (let's be optimistic here) you ever are faced with a system that won't start, you'll be ready.

Starting the Recovery Environment: Two Methods

Unlike Windows Vista, which did not include an option to start the Recovery Environment (RE) from the Advanced Boot Options menu in standard installations, Windows 7 installs an option to launch RE on this menu. To see the Advanced Boot Options menu, press F8 after restarting your computer.

Note that Windows 7 places the Repair Your Computer option, which starts Recovery Environment, at the top of the list of options.

But, what if your computer has lost the Recovery Environment files? Are you out of luck? Thankfully, no. On page 2 of our Windows 7 Feature Focus article on Windows 7 Backup and Restore , you learned how to create a System Repair disc. You can use the System Repair disc to start Recovery Environment, and I strongly recommend that you make one. You need a blank CD or DVD. Update: Yes, you can also use your Windows 7 DVD as a System Repair disc (hat tip to reader Pentium 0 - see comments - for the reminder).

Starting Recovery Environment from the Advanced Boot Options (F8) Menu

After you select Repair Your Computer from the Advanced Boot Options menu, here's what happens next:

1. Confirm your keyboard input method (and language, if you have installed multiple-language support). Click Next to continue.

2. Log into your installation. To enable access to the command prompt, select your user name from the pulldown menu:

3. Enter your password.

4. Click OK to continue.

5. The Recovery Environment (aka System Recovery Options) menu opens.

Starting Recovery Environment from the Windows Repair Disc

1. Insert the Repair Disc and restart the system. When prompted, press any key to start the system from CD or DVD.

2. Confirm the keyboard layout and language. Click Next to continue.

3. Select the Windows 7 installation you need to repair. If you have installed multiple versions of Windows 7, be sure to choose the correct one.

4. Click Next to continue:

Note that you do not need to provide login credentials when you use the Repair Disc.

5. The System Recovery Options menu opens.

Using Startup Repair

Startup Repair is used to fix a system that won't start. A variety of reasons can cause a system to fail to start, including

  • Damage to the root folder
  • Corruption in startup files
  • Missing startup files

For this article, I renamed the Winload.exe file in \Windows\System32 as Winload.old ; without this file, Windows 7 cannot start.

When you start your system with the Repair Your Computer option from the Advanced Boot Options menu, it checks to determine if you have startup problems. The same checks are performed after you select your Windows 7 installation when you start your system from the System Repair disc. In either case, if the Recovery Environment determines you have startup problems, it automatically runs the Startup Repair feature. You can also run Startup Repair from the System Recovery Options menu.

After completing repairs, Startup Repair displays a dialog similar to this one:

You can restart the system immediately by clicking Finish (1), or wait until the system restarts automatically (2). To see details of the repair, click the Click Here link (arrow).

When you click the link, a Startup Repair details dialog appears. Scroll down through the dialog to learn about the repair. In this example, the root cause was the boot manager's inability to find the OS loader, and a file repair was performed to solve the problem.

Click Close to close the dialog, and reboot the system as in the previous dialog.

Note: You can run Startup Repair multiple times if needed to solve startup problems.

Sending Your System "Back, Back in Time," with System Restore

System Restore has always been a useful way to solve system problems caused by faulty hardware or software installations. Windows Vista's Recovery Environment was the first to permit you to run System Restore without starting Windows first, and Windows 7 adds more refinements.

When you select System Restore from the System Recovery Options menu, click Next on the opening dialog (1) to continue.

By default, Windows 7 shows you only the most recent restore point, because in many cases, that's the one you'd use. If you've been having problems for awhile, you can see additional restore points by clicking the empty Show More Restore Points box. When this box is checked (2), you can scroll through the restore points to select the one you want to restore.

Windows 7 adds an important new feature to System Restore: the ability to see what will be changed on your system when you revert to a particular restore point. To see this information, select your preferred restore point and click the Scan for Affected Programs button (arrow).

The top pane of the dialog shows you the programs that will be removed, and the bottom pane shows you the programs that will be restored; usually programs that were replaced by newer versions. In this example, Microsoft Silverlight 3.x (top pane) would be removed, and the older Microsoft Silverlight 2.x version (bottom pane) would be restored. However, restored programs might not work. Use this dialog as a guide to determine what programs you might want to reinstall after reverting your system. Click Close to return to the main dialog. When you return to the main dialog (3, previous figure), click Next to continue.

Make sure the restore point you want to use is displayed (4), then click Finish (5).  Note that you have one more chance to view affected programs (arrow).

When the system reboots, it will have been reverted to the restore point you selected.

Restoring Your System with System Image Recovery

To learn more about his option, see our Windows 7 Feature Focus article on Windows 7 Backup and Restore .

Testing System Memory with Windows Memory Diagnostic

Windows Memory Diagnostic, which is based on Microsoft's downloadable memory test, was also found in Windows Vista's Recovery Environment. When you select the Windows Memory Diagnostic link from the System Recovery Options menu, you can choose whether to restart your system and run diagnostics now (default) or test memory the next time the system is rebooted.

When the system restarts, the memory diagnostic tool runs. By default, it runs twice, then reboots the system and displays any detected problems after you log onto Windows. To change or review settings, press the F1 key (arrow).

The default test set is Standard (1); other options include Basic (fewer tests) and Extended (all tests). Some tests disable memory cache, while others enable it (see the description for each test set for details (2). To adjust the cache settings, tab to Cache (3): and select the settings desired. To adjust the number of test passes, tab to Pass Count (4): and enter the number desired. Press F10 to save changes.

Using the Command Prompt

If you've ever suffered through the limited command prompt available from Windows XP's Recovery Console, you will really appreciate the command prompt available from the Windows 7 Recovery Environment.

Unlike Recovery Console's command prompt, which by default can perform only a small subset of normal command-prompt functions, you can use Windows 7's command prompt in Recovery Environment with any command prompt program or internal command, including multiple file and folder-copy programs such as robocopy . Consequently, command prompt enables you to copy data from a crashed system to another drive, including external USB drives. You can even format CD and DVD media from Command Prompt and copy files to the media. As long as the drive is connected to the system before you start it (and is recognized by the system), you can use the drive.

The complete list of commands available from command prompt is a long one. For a list of commands and brief descriptions, enter Help after you open command prompt. You can obtain detailed help and syntax examples, by typing commandname /?, or by looking up the command in Windows 7's Help system. Here's a portion of the help for robocopy, which I displayed by typing robocopy /? at the command prompt:

When you start command prompt, the system defaults to X:\Windows\System32 (X: being the drive letter used by Recovery Environment). Note the drive letter listed on the System Recovery Options opening menu to determine your system drive letter, which might not match the designations you use in day-to-day use.

To switch to another drive letter in command prompt, type driveletter : and press Enter (for example, D: )

Useful System Recovery Commands

I have found the following commands particularly useful:

Bcdedit – displays and configures boot settings

Chkdsk – checks drive for errors and displays disk usage stats

Dir – Lists files and folders

Exit – closes command prompt session

Format – Erases and prepares blank media for use.

Net – network client configuration and logon tool

Robocopy – powerful file/folder copying utility

Command Prompt Tips and Tricks

If you're unfamiliar with these commands, here are some tips and tricks:

  • You can scroll the command prompt window up and down to see output that scrolled past you
  • Use bcdedit to display the drive identifiers in use by Recovery Environment
  • To format a blank CD or DVD for use in copying files and folders, use this syntax (assuming F: is your rewritable CD/DVD drive):
    Format F: /fs:udf
    Press Y to continue format when prompted

Using Robocopy to Retrieve User Data

In the days of MS-DOS, nothing beat Xcopy for copying files and folder structures. Today, Robocopy performs the same task while adding many new refinements to make it suitable for network copying and working with NTFS.

If you need to retrieve the files used by user John Jones, for example, to a John Jones folder on H: drive (an external hard disk), use the following syntax (assumes the system drive is C:):

C:\> robocopy "C:\users\John Jones\" "H:\John Jones" /mir /xa:SH /xd AppData /xjd /r:5 /w:15

This command copies everything ( /mir ) in the John Jones folder and subfolders on drive C: to the John Jones folder on H: except for the following: system and hidden files (/xa:SH ), the AppData folder (/ xd AppData ), and junction points used to make folders in other locations appear in the user's folder ( /xjd ). In case of problems, robocopy will retry the command 5 times ( /r:5 ) and will wait 15 seconds between retries ( /w:15 ).

This command example is adapted from Greg Shultz's Create a custom backup tool with Vista's Robocopy article at Tech Republic (see the article for much more about Robocopy's syntax and other uses).

During the process, you will see screens similar to the following (in this example, I copied my user folder and added the /COPYALL switch to copy extended file atttributes; see arrow for options):

At the end of the robocopy process, you will see a dialog similar to this one:

Note the scroll bar in the last two figures. You can always scroll back through all of the commands and displays during the current command prompt session.


If you haven't tried Windows 7's Recovery Environment yet, give it a try – even if everything's OK with your system. It brings a great suite of troubleshooting tools to your assistance, and it never hurts to practice before a real problem takes place.

Around the web