获取系统中已安装的软件信息,该怎么解决

获取系统中已安装的软件信息
我查过有两种方法:
1)读开始菜单文件夹下的信息,但是这个信息是不全的,所以抛弃了

2)是通过读注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
这个项下的信息,但是这个信息太多了,很多信息没有用,我查了下 添加或删除程序 那上面的对于注册表来说精简了很多信息,有哪位大侠知道他是怎么来的或者怎么过滤这个信息!感谢

------解决方案--------------------
每个项中看SystemComponent,如果为1, 添加删除程序中不会显示出来,你也可以过滤一下
------解决方案--------------------
如果软件安装了,肯定会在控制面板,添加删除出现的。
绿色的就不在了。
------解决方案--------------------
http://topic.****.net/u/20110817/13/e9abbb6d-b067-44b9-bc28-adb091eb7577.html 这里有回答