4 / 4 / 0
Регистрация: 17.05.2011
Сообщений: 27

Как получить содержимое реестра?

03.06.2011, 15:21. Показов 1763. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
void __fastcall TForm1::Button4Click(TObject *Sender)
{
TRegistry *reg = new TRegistry(KEY_ALL_ACCESS);
 
   reg->RootKey=HKEY_LOCAL_MACHINE;
   reg->OpenKey("",1);  //Открываем ключ
   TStringList *l=new TStringList;
   reg->GetKeyNames(l);        // список подключей
   TStringList *s=new TStringList;
   reg->GetValueNames(s);      // список параметров
   ShowMessage(s->Text);
//   for(int znach=0; znach<s->Count; znach++)
//   {
//     String a=s->Strings[znach];
//     if(a=="Path" || a=="Directory")
//     {
//         ShowMessage("Parameter detected");
//         // где-то тут функцию для проверки на существование в файловой системе
//     }
//     else  ShowMessage("Проверять нечего. Следующий параметр");
//   }
  // ListBox1->Items->AddStrings(l);
   if(reg->HasSubKeys()==true)
   {
   for(int ik=0;ik<l->Count;ik++)   // каждый подключ
   {
            TRegistry *reg1 = new TRegistry(KEY_ALL_ACCESS);
            TStringList *lol=new TStringList;
            reg1->RootKey=reg->RootKey;
            reg1->OpenKey(UnicodeString(l->Strings[ik]), 1);
            reg1->GetKeyNames(lol);
            if(reg->HasSubKeys()==true)           // если есть подключи
            {
                    ListBox1->Items->Add("_______________"+UnicodeString(l->Strings[ik])+"_____________________");
                    if(lol->Count>0)
                    {
                        ListBox1->Items->AddStrings(lol);        // добавляем все подключи
                        for(int l1=0; l1<lol->Count; l1++)
                        {   reg1->OpenKey("\\"+UnicodeString(lol->Strings[l1]),1);
                            reg1->OpenKey("",1);         // открываем текущий ключ
                            TStringList *l1=new TStringList;
                            if(l1>0)
                            {
                                reg1->GetValueNames(l1);   // получаем список параметров
                                    for(int kr=0;kr<l1->Count;kr++)        // перебирается список параметров
                                    {
                                         ListBox1->Items->Add("_______________"+UnicodeString(l1->Strings[kr])+"_____________________");
                                       //    ListBox1->Items->AddStrings(l1); //добавляются все параметры подключа
                                    }
                                    //  ShowMessage(l1->Count);
                                    for(int k=0; k<s->Count; k++)
                                    {
                                       UnicodeString a=reg->ReadString("Path");
                                       UnicodeString b=reg->ReadString("Directory");
                                    }
                                }
                        }   reg1->CloseKey();
                    }
            }
 
   }
   delete reg;
   }
Написал такую функцию, но удаётся получить содержимое только лишь верхнего уровня. Как задать признак конца обхода ветки реестра?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.06.2011, 15:21
Ответы с готовыми решениями:

IdHTTP POST запрос. Как получить содержимое ответа переданное в окно?
Посылаю post на авторизацию, возвращается заглавная страница с подтверждением. Все ок. Далее посылаю get и обрабатываю их ответы. Все ок....

Не могу получить значение из реестра при содействии метода RegQueryValueEx()
Здравствуйте! Ребята подскажите по такому вопросу. Вот код HKEY hKey = &quot;HKEY_LOCAL_MACHINE\\SOFTWARE\\Department&quot;; ...

TStringGrid: получить содержимое ячейки
В общем название темы говорит само за себя. Я не очень хочу рассчитывать по координатам что там было ранее написано, у меня логика...

1
 Аватар для Maluda
1280 / 598 / 116
Регистрация: 18.08.2009
Сообщений: 832
03.06.2011, 20:55
Надо писать рекурсивную функцию
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.06.2011, 20:55
Помогаю со студенческими работами здесь

ListBox, получить содержимое отдельной строки
ДОБРОГО ВРЕМЕНИ СУТОК ОБЬЯСНИТЕ ПОЖАЛУЙСТА ПОЧЕМУ Я ПИШУ Edit1-&gt;Text=ListBox1-&gt;Items.Text; А ОНО ПРИСВАИВАЕТ В ПОЛЕ eDIT1-&gt;TEXT все...

Как удалить содержимое ветки реестра
Всем доброго здравия. Подскажите как на C# удалить содержимое ветки реестра HKLM\SYSTEM\CurrentContolSet\Enum\USBSTOR

Как получить значение реестра?
Есть путь HKEY_CURRENT_USER\SOFTWARE\MCLab и параметр sm_memory, как получить и вывести значение в консоль? Заранее спасибо =)

Как получить список значений из реестра?
Как получить список значений из реестра?

Как получить доступ к 64-битной ветке реестра?
Как из 32-битного приложения на VB2010 получить доступ к 64-битной ветке реестра (OS Windows 7 x64)? Нужно получить список программ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru