用C#读取Windows注册表中的多重字串和二进制字串开发者在线 Builder.com.cn 更新时间:20080720作者: 来源:

用C#读取Windows注册表中的多重字串和二进制字串开发者在线 Builder.com.cn更新时间:2008-07-20作者:来源:本文关键词:WindowsC#应用C#注册表中有多种数据存放的格式,有几种常见不能直接读出的格式。下面列出了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 != 0)
...
}
string sVer= Registry.LocalMachine.OpenSubKey(
@"SOFTWAREMICROSOFTDirectX").GetValue("Version").ToString();
sDirectX += " ("+sVer+")";



原文地址:https://www.cnblogs.com/zhiji6/p/1649403.html