System Restore workarounds
System Restore works by doing two things whenever you run it to "Restore your
computer to an earlier state"
It copies files that were saved at the time the restore point was created back to
the system. If newer versions of these files exist, they will be overwritten. However
copies of these are saved, in case you want to "undo" the restore.
It searches all drives for files in the categories it monitors (mostly binary files
like .EXE, .DLL, .VXD, etc) that were added AFTER the restore point was created.
It removes these files also, still saving backup copies.
When the restore is done, the system will automatically reboot, and the system should
be running as it did before.
This design has one potential trouble spot. It's not uncommon for install programs
to be downloaded to disk as a monolithic self-extracting .EXE file. So if you create
a Restore Point, download an .exe file, then use SR to roll the system back, your
new .EXE file will be deleted.
Don't Panic!
This can obviously be troublesome, especially if the setup program is some massive
download that will be hard to replace. However, there are workarounds that can help
prevent the problem. As long as you're aware that this can happen, it's pretty easy
to prevent it from impacting your system. There are two general approaches.
Download to a protected location:
SR does not currently allow you to specify files or folders you do not want monitored.
However it has some built in defaults that can be used as a substitute.
SR does NOT monitor the contents of the My Documents folder. So anything placed
there will not be effected by a Restore. This is perhaps the most straightforward
approach. Create a new folder in My Documents to hold files you want preserved through
a Restore. e.g. My Downloads <g>.
Many users prefer not having My Documents in its default location on the C: drive.
To move it, right click on its Desktop icon, pull up Properties, and use the Move
Folder button. This is pretty easy to do and helps with disk management. However
there's an added wrinkle with SR. Even though you have moved the folder, SR is NOT
AWARE of this. It will continue to assume the old location of My Documents is what
it should avoid, and will treat your new folder like any other on the drive. So
if you move the folder, you also must re-init SR to make it aware of what's changed
on the system. To do so, you need to purge its current settings, then restart it.
This is done via the System Applet in Control Panel, like so:
- Go to the File Systems > Troubleshooting tab. Tick the checkbox that says "Disable
System Restore", and reboot. This will purge all saved Restore Points and turn
SR off. (You may still see files in the normally hidden C:\_Restore folder. These
are connected with System File Protection and their presence is normal.)
- Go back to System > File Systems > Troubleshooting. Clear the "Disable
System Restore" checkbox, and reboot again. SR will reinitialize itself on
startup, an initial Restore Point will be created, and the program will now be in
synch with the current location of My Documents.
Other locations besides My Documents are available as safe harbors. SR also ignores
other folders. The most useful for a situation like this are TEMP and TMP. These
can be located on any drive, and don't necessarily need to be the same as your regular
system %TEMP folder. So you can create a folder named TMP on another drive (e.g.
E:\TMP) and use it as your default storage location. The name is a little inconvenient,
but it works. And that's probably the important thing. In a strange holdover from
Win2K, the folder name "Documents & Settings" is also protected. So
you can use a folder by that name as well, if it makes more sense to you, and you
don't have Win2K installed on your system. Another possibility is Downloaded Program
Files, in your Windows folder. Since I prefer to keep as little data as possible
on my C: drive, this isn't something I use. But it's available.
Hide the file by renaming it.
If you have a single file, you can protect it by renaming it. SR keys on file extensions
when its looking for individual files to backup and restore. If it runs across a
file whose extension is not on its internal list, it will ignore it. Knowing this,
you can rename a file using a safe extension. For instance .BIN, to denote a .BINary
file. The downside of this is that you will not be able to launch the file from
Explorer by double clicking on it. You will have to rename it back to .EXE first.
.ZIP files are also not effected. If you have a number of files (e.g. sitting in
an installation folder, like Symantec uses for many of its downloads), you can use
your favorite ZIP program to archive it for storage. Be aware that some ZIP programs
(e.g. Zip Magic) may work by showing Zip files as folders. If this is the case,
then SR will still be able to see the individual files, and may erase them. If you're
unsure whether your program does this, it's worth checking before relying on .ZIP
to hide files from SR.
One more.
If you found out about this the hard way, after an .EXE file you wanted to keep
disappeared, there is one more solution. That's the built in Undo capability of
SR. Remember that it saves copies of any files it overwrites or deletes. So you
can run SR again, and choose the option to "Undo my last restore." This
will roll back all the changes made, and your missing file should show up again.
If you originally ran SR in order to get around a "no-boot" situation,
this could get you back in to the same problem you were having before. But remember
that Safe Mode is always available. You may need to make a couple of trips there
in order to get things squared away before you can use SR as you originally intended.
Thanks to don lebow - MS-MVP.