Форум: "Основная";
Текущий архив: 2002.06.17;
Скачать: [xml.tar.bz2];
ВнизПоиск в реестре Найти похожие ветки
← →
MARcoDEN (2002-06-01 10:56) [0]Уважаемые мастера! Подскажите, пожалуйста, как производить поиск в реестре программными средствами Delphi?
← →
Song (2002-06-01 11:00) [1]TRegistry на нём Ctrl+F1
← →
MARcoDEN (2002-06-01 11:02) [2]2 Song: то значит Ctrl+F1?
← →
MARcoDEN (2002-06-01 11:03) [3]2 Song: что значит Ctrl+F1?
← →
Cobalt (2002-06-01 11:10) [4]Это значит, что надо набрать это слово, установить на него курсор и нажать комбинацию клавиш
> Ctrl+F1
← →
Anatoly Podgoretsky (2002-06-01 11:22) [5]Не слушай их, они спечиально усложняют, нажми просто F1
← →
MARcoDEN (2002-06-01 21:07) [6]Так бы и сказали: "Поищи в справке" :)
← →
MARcoDEN (2002-06-01 21:09) [7]Правда, что-то я так и не нашел... Если несложно, пожалуйста, напишите название функции! Буду вам очень признателен!
← →
Song (2002-06-02 10:08) [8]TRegistry.OpenKey()
← →
MARcoDEN (2002-06-02 11:09) [9]2 Song: Так ведь TRegistry.OpenKey() открывает ключ, а не ищет его!
← →
Cobalt (2002-06-02 12:55) [10]Это же как поиск файла - та же древовидная стр-ра.
Открывай по очереди все главные ключи, проходись по их подключам, затем по подключам их подключей и т.д.
Тебе понадобится написать рекурсивную процедуру (т.е. она вызывает сама себя), типа
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-03 21:01) [11]2 Cobalt: Огромное спасибо!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.06.17;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c