C# 获取RegEdit中appname的所有部分
关于.NET中的C# 获取RegEdit中appname的所有部分,c#,.net,vb.net,settings,regedit,C#,.net,Vb.net,Settings,Regedit,关于.NET中的GetSetting()函数,我找到了GetAllSettings()。也就是说,GetAllSettings(“MyApp”、“MySection”)将为我提供“MySection”下的所有键。然而,我找不到任何东西来获取我的应用程序的所有部分。在上面的例子中,我希望得到“MySection”作为搜索“MyApp”的结果 有什么想法吗?试试这个(C#): 我不确定VB,但您可能必须使用Registry.CurrentUser而不是LocalMachine,然后根据您的键的位置相
GetSetting()
函数,我找到了GetAllSettings()
。也就是说,GetAllSettings(“MyApp”、“MySection”)
将为我提供“MySection”下的所有键。然而,我找不到任何东西来获取我的应用程序的所有部分。在上面的例子中,我希望得到“MySection”作为搜索“MyApp”的结果
有什么想法吗?试试这个(C#):
我不确定VB,但您可能必须使用Registry.CurrentUser
而不是LocalMachine
,然后根据您的键的位置相应地修改路径(SOFTWARE\MyApp
是此处的路径)。更多信息
下面是VB.Net的相应代码-摘自
这段代码应该可以工作,只是要确保你的路径等设置正确。或者,如果您可以发布注册表配置单元的屏幕截图,我可以更好地指导您。Dim regKey as RegistryKey=registry.LocalMachine/CurrentUser.OpenSubkey(…在运行后为Nothing,在GetSubkeyNames()上中断)因为它不是对象的实例。你只需要VB的答案吗?那么你应该去掉C标记。关于你的另一个问题,我会检查MSDN上VB.Net的相应代码示例。不,不,对不起,VB不是必需的。但我正在使用它,这就是我粘贴它的原因。:)好的。我粘贴了VB代码以供参考。查看我的更新答案。很高兴它有帮助。如果有帮助,别忘了投票!
var regKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\MyApp",
RegistryKeyPermissionCheck.ReadSubTree));
var sections = regKey.GetSubKeyNames();
Dim rkTest As RegistryKey = Registry.CurrentUser.OpenSubKey("RegistryOpenSubKeyExample")
Console.WriteLine("There are {0} subkeys under Test9999.", _
rkTest.SubKeyCount.ToString())
For Each subKeyName As String In rkTest.GetSubKeyNames()
Dim tempKey As RegistryKey = _
rkTest.OpenSubKey(subKeyName)
Console.WriteLine(vbCrLf & "There are {0} values for " & _
"{1}.", tempKey.ValueCount.ToString(), tempKey.Name)
For Each valueName As String In tempKey.GetValueNames()
Console.WriteLine("{0,-8}: {1}", valueName, _
tempKey.GetValue(valueName).ToString())
Next
Next