我想读取一个位于以下位置的注册表值:
HKEY_LOCAL_MACHINE\SOFTWARE\MyProgram\PROG7.0.0\Info
值名称为“ Information ”,但键“ PROG7.0.0 ”可能具有变量名称,如“ PROG7.2.111 ”,将路径更改为:
HKEY_LOCAL_MACHINE\SOFTWARE\MyProgram\PROG7.2.111\Info
变量名称将始终采用“ PROG7.xx.xxx ”的形式,其中x是整数。另外,在该名称中始终始终只有一个这样的名称的子项HKEY_LOCAL_MACHINE\SOFTWARE\MyProgram
我知道我可以使用Regestry.GetValue
读取注册表值的方法,但是在我的情况下,路径是变量-我该如何处理?
非常感谢!
using System;
using Microsoft.Win32;
namespace RegistryLister {
public static class Program {
static void Main(string[] args) {
//var key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\MyProgram\");
var key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\");
if (key != null)
foreach (var keyName in key.GetSubKeyNames()) {
//if (keyName.StartsWith("PROG7"))
if (keyName.StartsWith("Mic"))
Console.WriteLine(keyName);
}
Console.ReadKey();
/* Outputs:
*
* Microsoft
* Microsoft Corporation
*
*/
}
}
}
阅读有关RegistryKey的更多信息
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句