`
zu14
  • 浏览: 459186 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类

C#读取注册表,获取本机安装的软件清单

阅读更多

应一个网友的需求,写了下面的,获取本机安装的软件的清单,希望对有需要的人,有帮助吧

using Microsoft.Win32;

using (RegistryKey key = Microsoft.Win32.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 = key2.GetValue("DisplayName", "").ToString();
                    string installLocation = key2.GetValue("InstallLocation", "").ToString();
                    if (!string.IsNullOrEmpty(installLocation))
                    {
                        this.textBox1.AppendText(string.Format("软件名:{0} -- 安装路径:{1}\r\n", softwareName, installLocation));
                    }
                }
            }
        }
    }
}

 

将取得的结果,放入 textBox1 中显示,每行一个。

分享到:
评论

相关推荐

    C#通过windows注册表获取软件清单的方法

    通过注册表获取软件清单是有效的方法之一。 首先,C#程序访问Windows注册表需要使用到`Microsoft.Win32.Registry`命名空间下的`RegistryKey`类。该类为注册表项提供了一个逻辑分层视图,包括根项(如`Registry....

    列出电脑安装软件清单

    3. **Windows API调用**:为了获取电脑上的软件清单,可能需要使用Windows操作系统提供的API函数,例如通过注册表(Registry)来获取已安装软件的信息。 4. **文件操作**:读取和写入Excel文件需要特定的库支持,如...

    获取电脑中软件列表并导出

    这个工具可能是用C#或VB.NET等.NET Framework语言编写的,利用.NET Framework提供的API来读取注册表和生成Excel文件。使用这样的工具可以简化上述过程,无需编写代码即可完成任务。但需要注意的是,从未知来源下载并...

    开机启动程序C#源码

    5. **读取启动项**:如果需要检查或获取开机启动程序列表,可以使用`GetValueNames`和`GetValue`方法。例如: ```csharp string[] startupPrograms = runKey.GetValueNames(); foreach (string program in ...

    明日科技C#开发入门及项目实战

    实例199 获取本机安装的软件清单 实例200 禁止使用windows任务管理器 实例201 清除ie地址栏中的历史网址 实例202 将磁盘驱动器隐藏 实例203 禁止使用命令提示符 实例204 禁止修改ie浏览器主页 实例205 设置ie浏览器...

    C# windows_API 查询器

    它可能是早期版本的数据文件,或者是数据库更新的日志,或者是无法以数据库格式读取的一些附加信息。 使用这样的工具可以帮助开发者快速集成Windows功能到C#应用中,尤其是在处理底层操作、系统级任务或增强性能时...

    《C#经典编程220例》.(明日科技).【带书签】-共3部分

    实例199 获取本机安装的软件清单 384 实例200 禁止使用windows任务管理器 385 实例201 清除ie地址栏中的历史网址 387 实例202 将磁盘驱动器隐藏 388 实例203 禁止使用命令提示符 390 实例204 禁止修改ie浏览器主页 ...

    C#微软培训资料

    18.1 注册表编程 .235 18.2 在 C #代码中调用 C++和 VB 编写的组件 .240 18.3 版 本 控 制 .249 18.4 代 码 优 化 .252 18.5 小 结 .254 第五部分 附 录 .255 附录 A 关 键 字.255 附录 B 错 误 码.256 ...

    C#在开机时自动启动程序

    C#中的`Microsoft.Win32.Registry`命名空间提供了访问注册表的类,如`RegistryKey`,可以通过它来读取、写入或删除注册表项。例如,我们可以创建一个新的`RegistryKey`对象,然后将程序的路径添加到适当的键值中。 ...

Global site tag (gtag.js) - Google Analytics