Jump to content
CCleaner Community Forums
jvd897

Obsolete VirtualStore files in Vista

Recommended Posts

So, apologies that one of my first posts here is a feature suggestion; that probably looks pretty tactless. But I think this suggestion is worth it!

 

As some of you may know, one of the awesome features in Vista is the file and registry virtualization: I'll focus on the file virtualization here, since it can be a bit more prickly. Let's say that a program tries to store data, not program files, in its Program Files folder. For security reasons, this is discouraged in Vista, so Vista will step in and silently save it to the user's "VirtualStore" folder instead, and retrieve it from there whenever the program needs it.

 

There are two ways to see these files in Vista: ( a ) Go to C:\Users\Your_user_name\AppData\Local\VirtualStore and browse through it, or ( b ) Go to Program Files and click "Compatibility Files" on the Explorer toolbar.

 

So, pretty smart idea on Microsoft's part, but sadly it's not that simple. The problem is that when you uninstall a program, its VirtualStore entires aren't necessarily deleted too. This adds up fast when you install and uninstall lots of programs.

 

Microsoft knows about the issue, and they discuss it here: http://support.microsoft.com/kb/927387/en-us (see Scenario 4). It also made it into PC Magazine: http://www.pcmag.com/article2/0,2817,2325762,00.asp. The verdict seems to be that it's OK to delete these orphaned files.

 

In one unfortunate example, I installed OpenOffice 2.2, and uninstalled it when 2.4 came out. I'm guessing that OpenOffice 2.2's installer wasn't entirely Vista-compatible, since everything went in duplicate to VirtualStore. So its program files take up 200MB on disk, and even though this was deleted from the Program Files, it's still in my VirtualStore folder. And not only that, but it's still in the respective VirtualStore folders for the three other user accounts on the computer, meaning that there's about 800MB of orphaned junk sitting on the hard drive. Ditto for old Java runtimes and Adobe readers.

 

I've considered writing my own program that would delete the files, using AutoIT or something. Being a relatively inexperienced programmer, and a high school student to boot, I figure that whatever half-baked solution I would make and post to Download.com would probably be doomed to obscurity, when there's likely lots of other Vista users suffering from this. So then I wondered, what if this were an option in CCleaner?

 

Piriform: how about it? It'd probably just mean going through each folder in VirtualStore, seeing if it has a match in Program Files, and if not, marking it for deletion.

 

CCleaner community: your thoughts?

 

Regards, and thanks for reading,

-Jonathan

Share this post


Link to post
Share on other sites

Hi Jonathan, and welcome to Piriform, and no apology needed.

 

I don't have Vista, so can't look at what it is you refer to, or whether it's OK to delete these folders, but you could clean them with CCleaners "Include" feature.

 

CCleaner\Options\Include\Add File or Folder", and check the "Custom Files And Folders" box in "Windows\Advanced".

 

A Vista user may come along with other advice, but if not, maybe this will help.

Share this post


Link to post
Share on other sites

Thanks for the reply!

 

I don't have Vista, so can't look at what it is you refer to, or whether it's OK to delete these folders, but you could clean them with CCleaners "Include" feature.

 

Fair solution, but my suggestion is that CCleaner include a way of detecting which folders are safe to delete and which ones aren't, which is the real trick here. You're right, I could clean them using the "Include" lists, but I would still need to identify the orphaned folders manually, and then I might as well delete them through Windows Explorer, unless I really wanted CCleaner's secure deletion.

 

Still, thanks for responding. I've dug into this a bit more deeply now and I think I might write my own program for it when I get the chance, but I still think this could be a useful addition.

Share this post


Link to post
Share on other sites
The verdict seems to be that it's OK to delete these orphaned files.

 

Hello Jonathan,

 

I am a Vista Home Premium user and have not experienced any problems myself with regard to deleting the entire contents (files and subfolders) of the VirtualStore folder, regardless of which applications have been installed or uninstalled. Files and subfolders get rebuilt in the VirtualStore folder as and when necessary.

 

As a test, simply open the VirtualStore folder in Windows Explorer and rename one of the subfolders relating to a particular application. Now open the application in question. You should find that subfolders and files are recreated in VirtualStore as and when relevant actions and functions are triggered in the chosen application.

 

The addition of VirtualStore folder cleaning should certainly be a very easy one to include in a future release of CCleaner.

 

Regards

DJ

Share this post


Link to post
Share on other sites
As a test, simply open the VirtualStore folder in Windows Explorer and rename one of the subfolders relating to a particular application. Now open the application in question. You should find that subfolders and files are recreated in VirtualStore as and when relevant actions and functions are triggered in the chosen application.

 

Thanks for the reply DJJ123, and apologies that it's taken so long to get back to you about this.

 

I tried testing the VirtualStore system in the way you suggested, on the computer I described in my first post. Unfortunately, however, I did not have the same results. For example, I renamed the "Yahoo!" program folder to "Yahoo", opened Yahoo! Messenger, played with it a bit, closed the program, and throughout all of this, no new VirtualStore folder was created, not even after a reboot.

 

Also, I'm not sure how safe it would be to delete everything all at once: what if a currently-installed program had an INI file in VirtualStore, and then it got deleted? Would the new INI file be identical to its predecessor? Or would the settings be lost? Et cetera.

 

Thanks nonetheless! I'm glad that this is being discussed; there's not a lot of information available about this problem.

Share this post


Link to post
Share on other sites

Now that I'm on summer vacation, I finally had the chance to write a program to automate this task!

 

It's currently a beta that I've codenamed "Obsoclean", and it can be downloaded here:

http://cid-08b9df685a6ec76e.skydrive.live....n/obsoclean.zip

 

NOTE: By downloading the above program, you agree to its tems and disclaimer, which can be read here:

http://bof8ca.bay.livefilestore.com/y1p9UT...0Disclaimer.txt

 

Hopefully some users here will find it useful! I hope to soon upload it to various download sites, and to create a website for it.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...