![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как получить значения ключей ветки реестра? [D7, XP]
Gloomer © (2006-10-13 17:02:00)Почему следующий код выдает пустой список?
ListBox1.Clear;
reg:=TRegistry.Create(KEY_READ);
try
if Reg.OpenKey('\Software\1C\1Cv7\7.7\Titles', false) then
begin
reg.GetKeyNames(ListBox1.Items);
// reg.GetValueNames(ListBox1.Items);
reg.CloseKey;
end;
finally
reg.Free;
end;
Что я делаю не так? Если раскоментировать строку, то список значений заполняется нормально.
Gloomer (2006-10-13 18:17:00) [1]Прошу прощения - все работает, просто подключей действительно нет :-)
Просто тяжелый день - патница 13-е :-)))
Gloomer (2006-10-13 18:01:00) [2]В модуле Registry текст процедур GetValueNames и GetKeyNames практичести идентичен.
после выполнения первых двух строк (одинаковых для обеих процедур)
Strings.Clear;...
if GetKeyInfo(Info) then
в первом случае Info.NumSubKeys равно количеству ключей, а во втором - 0
Почему???
Gloomer (2006-10-13 17:41:00) [3][1] 1C именно в HKEY_CURRENT_USER и хранит записи об ИБ...
[2] может и лишний, но проблемы это не решает
к тому же ведь GetValueNames в данном контексте работает, а GetKeyNames - нет
han_malign (2006-10-13 17:12:00) [4]и '\' в начале лишний, по моему...
han_malign (2006-10-13 17:09:00) [5]By default, RootKeyis set to HKEY_CURRENT_USERwhen the registry object is created.