I think i wasn't clear in my first post... the focus of my suggestion is in the "Cleaner" section of the program, not the "Tools" section, where the uninstall functions exist. When the program opens, the initial view is where you can toggle between "Windows" and "Applications." The "Applications" section appears to have more programs listed (and check-boxed) than the computer is actually running. For example, it says both Office 2003 and Office 2007 even though you only have one of those applications installed. It's a little confusing. One suggestion is to have a true list of what your computer is actually running and being maintained by CCleaner in the list. Then, a second suggestion is to have a list of other programs that CCleaner could maintain, but are not installed in your computer. So for example, if i have Office 2003 already installed, then that box will be checked. And Office 2007, which i don't have, will not even be checkable. The user, however, will notice that CCleaner has the potential to maintain that program if I did decide to upgrade to Office 2007.
(Furthermore, CCleaner could be developed to maintain many other softwares, leaving a noticeable trail in the not checkable list. As soon as someone has the program installed (or if they had already had it installed), then it would be checkable and maintained by the program. At some point, there needs to be a decision of what's the goal of the cleaning and which programs are necessary to clean to fulfill that goal.)
I hope that's clearer, sorry for any confusion!