Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.04.17;
Скачать: [xml.tar.bz2];

Вниз

Поиск в реестре ...   Найти похожие ветки 

 
Acidy   (2003-02-20 08:05) [0]

Народ! Помогите организовать поиск в строки реестре (надо проверить все ключи и разделы...). Хотя бы алгоритм... Спасибо!
p.s Я не тупой, я просто занят сильно...


 
han_malign   (2003-02-20 09:21) [1]

RegEnumKey/RegEnumValue и так-же как поиск файла(FindFirst/FindNext), единственное отличие - ключи(каталоги) и значения(файлы) - ищутся разными функциями, а не одной...


 
anner   (2003-02-20 10:47) [2]

Например следующая процедура сканирует реестр и ищет точное совпадение со строкой FindString, все совпадения заносит в
OutList


procedure FindStringRegistry(RootKey: HKEY; PathString: string; FindString: string; var OutList: TStringList);
var Reg: TRegistry;
SubKeys: TStringList;
ValueNames: TStringList;
i: integer;
begin
Reg := TRegistry.Create;
Reg.RootKey := RootKey;
Reg.OpenKey(PathString, false);
ValueNames := TStringList.Create;
Reg.GetValueNames(ValueNames);
for i := 0 to ValueNames.Count-1 do
if (Reg.GetDataType(ValueNames[i])=rdString) and (Reg.ReadString(ValueNames[i])=FindString) then
OutList.Add({HKey + "\" + }PathString + "\" + ValueNames[i]);
SubKeys := TStringList.Create;
Reg.GetKeyNames(SubKeys);
for i := 0 to SubKeys.Count-1 do
FindStringRegistry(RootKey, PathString + "\" + SubKeys[i], FindString, OutList);
end;


И пример ее использования (ищет строку "local" в разделе HKEY_CURRENT_USER):


procedure TMainForm.btnOKClick(Sender: TObject);
var OutString: TStringList;
i: integer;
begin
OutString := TStringList.Create;
FindStringRegistry(HKEY_CURRENT_USER, "", "local", OutString);
for i := 0 to OutString.Count-1 do
cbxRes.Items.Add(OutString[i]);
end;


 
Acidy   (2003-02-22 10:40) [3]

Усем бальшушее пасиба !!!!



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.04.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.008 c
3-54531
CAMOBAP
2003-04-01 08:44
2003.04.17
sql – запрос


7-54914
pet
2003-02-26 14:19
2003.04.17
Проблема выхода Виндовс


3-54500
malkolinge
2003-03-31 14:12
2003.04.17
Сравнение с датой на сервере


14-54849
AM
2003-04-01 17:42
2003.04.17
Частота монитора в текстовом режиме DOS


7-54909
ScaliaR
2003-02-22 02:27
2003.04.17
программирование сервиса для w2k





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский