![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Поиск в реестре [D5, WinME]
MARcoDEN © (2002-06-01 10:56:00)Уважаемые мастера! Подскажите, пожалуйста, как производить поиск в реестре программными средствами Delphi?
MARcoDEN (2002-06-03 21:01:00) [1]2 Cobalt: Огромное спасибо!
Cobalt (2002-06-02 12:55:00) [2]Это же как поиск файла - та же древовидная стр-ра.
Открывай по очереди все главные ключи, проходись по их подключам, затем по подключам их подключей и т.д.
Тебе понадобится написать рекурсивную процедуру (т.е. она вызывает сама себя), типа
var MyKey:string;
Function Findin(NextKey:string):bolean;
var reg:Tregistry;
str1:stringlist;
...
if not reg.OpenKey(NextKey,false)
then ....//Ошибка открытия
str1:=TStringList.Create;//не забудь создавать!
reg.GetKeyNames(str1);
for i:=0 to str1.Count-1 do
begin
if str1[i]<>MyKey
then if Findin(CurrentPath+"\"+str1[i])
then begin //Нашли
reg.Close;
Result:=true;
exit;
end;
.....
end;
.....
reg.Close;
end;
MARcoDEN (2002-06-02 11:09:00) [3]2 Song: Так ведь TRegistry.OpenKey()открывает ключ, а не ищет его!
Song (2002-06-02 10:08:00) [4]TRegistry.OpenKey()
MARcoDEN (2002-06-01 21:09:00) [5]Правда, что-то я так и не нашел... Если несложно, пожалуйста, напишите название функции! Буду вам очень признателен!
MARcoDEN (2002-06-01 21:07:00) [6]Так бы и сказали: "Поищи в справке" :)
Anatoly Podgoretsky (2002-06-01 11:22:00) [7]Не слушай их, они спечиально усложняют, нажми просто F1
Cobalt (2002-06-01 11:10:00) [8]Это значит, что надо набрать это слово, установить на него курсор и нажать комбинацию клавиш
> Ctrl+F1
MARcoDEN (2002-06-01 11:03:00) [9]2 Song: что значит Ctrl+F1?
MARcoDEN (2002-06-01 11:02:00) [10]2 Song: то значит Ctrl+F1?
Song (2002-06-01 11:00:00) [11]TRegistry на нём Ctrl+F1