C#实现读取注册表监控当前操作系统已安装软件变化的方法
作者:我心依旧 时间:2022-01-04 08:07:04
本文实例讲述了C#实现读取注册表监控当前操作系统已安装软件变化的方法。分享给大家供大家参考。具体实现方法如下:
private static HybridDictionary GetSoftName()
{
string strSoftName = string.Empty;
HybridDictionary hdSoftName = new HybridDictionary();
/*对注册表节点"Software/Microsoft/Windows/CurrentVersion/Uninstall"下的内容进行操作。
RegistryKey Registry 为注册表操作类*/
using (RegistryKey key = Registry.LocalMachine.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Uninstall", false))
{
if (key != null)
{
foreach (string keyName in key.GetSubKeyNames())
{
using (RegistryKey key2 = key.OpenSubKey(keyName, false))
{
if (key2 != null)
{
string softwareName = Convert.ToString(key2.GetValue("DisplayName"));//获取DisplayName,如存在值,则系统中安装有该软件
//string installLocation = key2.GetValue("InstallLocation", "").ToString();//软件安装路径
if (!string.IsNullOrEmpty(softwareName))
{
if (!hdSoftName.Contains(softwareName))
{
hdSoftName.Add(softwareName, string.Empty);//将软件名作为集合的key
}
}
}
}
}
}
}
return hdSoftName;
}
希望本文所述对大家的C#程序设计有所帮助。
标签:C#,注册表
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Android中TimePicker与DatePicker时间日期选择组件的使用实例
2023-08-07 01:35:15
![](https://img.aspxhome.com/file/2023/0/84740_0s.jpg)
java实现纸牌游戏之小猫钓鱼算法
2021-08-11 22:57:00
Java使用BigDecimal进行运算封装的实际案例
2023-06-20 02:22:26
java动态线程池的简单实现思路
2023-10-18 15:53:46
SpringBoot项目的配置文件中设置server.port不生效问题
2022-11-13 06:01:26
![](https://img.aspxhome.com/file/2023/6/63666_0s.png)
java使用IO流对数组排序实例讲解
2023-09-04 02:24:19
教你使用Java获取当前时间戳的详细代码
2021-09-19 04:41:02
Java查找不重复无序数组中是否存在两个数字的和为某个值
2023-08-22 16:44:40
原来Java中有两个ArrayList
2023-06-27 11:49:40
Java中实现简单的Excel导出
2021-10-21 07:23:25
![](https://img.aspxhome.com/file/2023/0/68730_0s.png)
springmvc如何使用map接收参数
2023-11-28 04:49:17
![](https://img.aspxhome.com/file/2023/9/60289_0s.png)
Java基础之final关键字作用案例
2022-11-02 19:23:35
![](https://img.aspxhome.com/file/2023/6/62126_0s.png)
深入理解Spring中bean的生命周期介绍
2023-02-08 17:21:37
![](https://img.aspxhome.com/file/2023/8/61318_0s.png)
java 创建线程的四种方式
2023-11-02 21:38:07
Java获取彩色图像中的主色彩的实例代码
2021-10-16 01:09:39
![](https://img.aspxhome.com/file/2023/2/67172_0s.png)
关于spring的自定义缓存注解分析
2023-11-28 17:02:50
Java线程之守护线程(Daemon)用法实例
2023-11-29 09:15:13
MyBatis批量插入(insert)数据操作
2023-09-21 00:03:54
Java实现map转换成json的方法详解
2022-09-09 12:26:03
Unity实现俄罗斯方块游戏
2023-05-30 21:07:22
![](https://img.aspxhome.com/file/2023/2/69782_0s.gif)