Смотрим картинку ниже.
Итак, для того, чтобы начать двигаться по реестру нам нужно получить ветвь реестра. Как это сделать написано в шагах "Шаг 140 - Доступ к реестру" и "Шаг 142 - Класс Registry", получить ветвь мы можем используя рекурсию перебирать ветви дерева читайте "Шаг 144 - Перебор ветвей и рекурсия", но для того, чтобы идти ниже по дереву нам нужно пункты открывать об этом читайте "Шаг 145 - Открываем пункт OpenSubKey". Отбытие пунктов производится на основе имени пункта, список имен можно получить "Шаг 143 - Получение имен пунктов GetSubKeyNames". К каждому пункту может быть привязано значение, можно получить список значений "Шаг 146 - Перебор имен значений ключей GetValueNames". На основе имени можно получить тип и само значение читайте "Шаг 147 - Получаем значения".
Если мы точно знаем куда идти, то нет надобности последовательно открывать реестр. Можно сразу отрыть необходимые нам пункты.
using System; using Microsoft.Win32; class MainClass { public static void Main(string[] args) { RegistryKey rk = Registry.CurrentConfig; RegistryKey rknew=rk.OpenSubKey("System\\CurrentControlSet\\SERVICES\\NV4\\DEVICE0"); foreach(string cv in rknew.GetValueNames()) { Console.WriteLine(cv); } } }
Мы использовали OpenSubKey, чтобы сразу добраться до нужного места.