科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件用C#读取Windows注册表中的多重字串和二进制字串

用C#读取Windows注册表中的多重字串和二进制字串

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文给出了读取WindowsXP注册表中的REG_MULTI_SZ(多重字串)和REG_BINARY(二进制值)的方法,供大家参考!

作者:ahshow 来源:Csdn博客 2007年11月19日

关键字: C# Windows 多重字串 二进制 字串

  • 评论
  • 分享微博
  • 分享邮件
注册表中有多种数据存放的格式,有几种常见不能直接读出的格式。下面列出了2个方法,分别是读取WindowsXP注册表中的REG_MULTI_SZ(多重字串)和REG_BINARY(二进制值)的方法。

//读取Windows安装盘目录
//Installation Sources是个REG_MULTI_SZ:多重字串,直接转string读不出
string[] key = (string[])Registry.LocalMachine.OpenSubKey(

@"SOFTWAREMicrosoftWindowsCurrentVersionSetup").GetValue("Installation Sources");
treeView1.Nodes[0].Nodes[4].Nodes[3].Nodes.Add("安装盘目录:" +

key.GetValue(0).ToString());

//读取DirectX版本
//directX是个REG_BINARY类型,必须转换得到它正确的值
byte[] array = (byte[])Registry.LocalMachine.OpenSubKey(

@"SOFTWAREMICROSOFTDirectX").GetValue("InstalledVersion");
//byte array1 = (byte)array.GetValue(0);
string sDirectX = "DirectX ";
for (int i = 0; i < array.Length; i++)
...{
if (array[i] != 0)
...{
sDirectX+=array[i].ToString();
}
}
string sVer= Registry.LocalMachine.OpenSubKey(

@"SOFTWAREMICROSOFTDirectX").GetValue("Version").ToString();
sDirectX += " ("+sVer+")";

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章