RegistryKey.GetValueNames() возвращает неверный результат? - C#

Узнай цену своей работы

Формулировка задачи:

Работая с реестром, заметил, что RegistryKey.GetValueNames() возвращает не верный результат. В частности, в одном ключе метод возвращает одно только значение по умолчанию, в то время как у него есть 3 параметра. Эти три параметра видны в regedit, один из них я лично создал, но метод их в упор не видит. При открытии данного ключа, в свойстве ValueCount, тоже значение "1" вместо "3". Понятия не имею в чем причина, и как фиксить библиотечную функцию. Код открытия ключа
      RegistryKey RootKey = GethKey(root);
      RegistryKey Key = RootKey.OpenSubKey(Substring);
Код получения имен параметров
  string[] KeyValues = Key.GetValueNames();
Скрины отладчика и regedit

Решение задачи: «RegistryKey.GetValueNames() возвращает неверный результат?»

textual
Листинг программы
using (var classesRoot = RegistryKey.OpenBaseKey(RegistryHive.ClassesRoot, RegistryView.Registry64))
using (var key = classesRoot.OpenSubKey(@"CLSID\{1B261B22-AC6A-4E68-A870-AB5080E8687B}\LocalServer32"))
{
    string[] names = key.GetValueNames();
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.167 из 5
Похожие ответы