C#获取软件列表

anhuizhxd 2008-12-29 03:36:27
我想用C#获取计算机上所有安装软件的列表,现在通过读注册表(SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall)能够获得,但是软件的大小、使用频率不知道怎么获取,有没有高手解决一下啊?
...全文
115 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
mibolt 2012-04-02
  • 打赏
  • 举报
回复
求解决。。。
anhuizhxd 2008-12-30
  • 打赏
  • 举报
回复
大小确实是EstimatedSize,但有这个信息的软件比较少,我看360软件管理里面,统计的比较全,不知道它是怎么做的,关于这个使用频率,windows有监测软件程序次数的程序,我不知道怎样获取它的检测结果?
lovefootball 2008-12-29
  • 打赏
  • 举报
回复
大小就是EstimatedSize吧

使用频率你点一下添加删除程序那个对话框里面的使用频率有介绍的
什么样的算低什么样的算高
自己转化下


RegistryKey hklm = Registry.LocalMachine;
RegistryKey uninstall = hklm.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\");
foreach (string site in uninstall.GetSubKeyNames())
{
RegistryKey sitekey = uninstall.OpenSubKey(site);
if (sitekey == null)
{
Console.WriteLine(sitekey + "-----" + "IS NULL");
continue;
}
foreach (string s in sitekey.GetValueNames())
{
Console.WriteLine(site + "-----" + s + ":" + sitekey.GetValue(s));//在这里获得大小和使用频率
}
}
子夜1978 2008-12-29
  • 打赏
  • 举报
回复
这些信息似乎也都在注册表里吧,等待高手,和你一同学习!

111,130

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧