2014-09-04 2 views
1

En ce qui concerne la fonction GetSetting() dans .NET, j'ai trouvé le GetAllSettings(). C'est, GetAllSettings("MyApp", "MySection") me donnera toutes les clés sous "MySection". Je ne peux pas, cependant, trouver quelque chose pour obtenir toutes les sections de mon application. Dans le cas ci-dessus, je voudrais obtenir "MySection" comme résultat pour la recherche "MyApp".Obtenez toutes les sections pour appname dans RegEdit

Des idées?

Répondre

2

Try this (C#):

var regKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\MyApp", 
        RegistryKeyPermissionCheck.ReadSubTree)); 
var sections = regKey.GetSubKeyNames(); 

Je ne suis pas sûr de VB, mais vous pouvez avoir à utiliser Registry.CurrentUser au lieu de LocalMachine et modifiez le chemin en conséquence (SOFTWARE\MyApp est le chemin ici), sur la base où sont vos clés. Plus d'infos here

Voici le code correspondant pour VB.Net - prise de here

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 

Ce code devrait fonctionner, assurez-vous que votre chemin, etc. est correctement réglée. Ou si vous pouvez poster une capture d'écran de vos ruches de registre, je peux vous guider mieux.

+0

Dim regKey comme RegistryKey = Registry.LocalMachine/CurrentUser.OpenSubkey (... est Nothing après l'exécution et il casse sur GetSubkeyNames() car ce n'est pas une instance d'un objet.) – gubbfett

+0

Avez-vous besoin de la réponse dans VB seulement? Je devrais alors supprimer la balise C# En ce qui concerne votre autre problème, je vérifierais l'exemple de code correspondant sur MSDN pour VB.Net – Mrchief

+0

Non non désolé, VB n'est pas nécessaire, mais je l'utilise et c'est pourquoi je l'ai collé. :) – gubbfett

Questions connexes