Вниз
Скачать: CL | DM;

GetKeyNames   Найти похожие ветки 

 
Cure   (2004-01-07 00:48) [0]

Почему не работает код:

var TS: TStrings;
    Reg: TRegistry;
begin
 TS := TStringLIST.Create;
 Reg := TRegistry.Create;
 Reg.RootKey := HKEY_CLASSES_ROOT;
 Reg.OpenKey("",false);
 Reg.GetKeyNames(TS);
end;

Мне нужно получить список всех подразделов, но процедура Reg.GetKeyNames ничего не дает. В чем моя ошибка?


 
div   (2004-01-08 18:34) [1]

Очень странно но у меня все работает )))
Попробуй объявить TS: TStringList )))
и не забудь:
 ... ... ...
 TS.Free;
 Reg.Free;
end;


 
app ©   (2004-01-08 18:50) [2]

Диагноз верный, надо использовать неследника от TStrings в котором реализованы абстрактные методы, сам TStrings не имеет средств хранения данных.


 
VMcL ©   (2004-01-09 18:58) [3]

>>app ©  (08.01.04 18:50) [2]

var TS: TStrings;
 Reg: TRegistry;
begin
TS := TStringLIST.Create;
Reg := TRegistry.Create;
Reg.RootKey := HKEY_CLASSES_ROOT;
Reg.OpenKey("",false);
Reg.GetKeyNames(TS);
end;


>>Cure  (07.01.04 00:48)

Ты уверен, что OpenKey() вернул True?


 
Anatoly Podgoretsky ©   (2004-01-09 19:31) [4]

VMcL ©   (09.01.04 18:58) [3]
Не заметил :-(
Но головной ключ имеет имя "/"


 
VMcL ©   (2004-01-11 03:05) [5]

>>Anatoly Podgoretsky ©  (09.01.04 19:31) [4]
>>Но головной ключ имеет имя "/"

Гы. Это Вынь - тут "\", а в Линухе/Юнихе, если был бы реестр, то, наверное, было бы "/" :)))

В данном случае не важно. TRegistry использует относительный путь, если в начале строки не указан символ "\". Но поскольку еще ни одна ветка не открыта, то сам корневой ключ и открывается.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
8-1068977159
AMZAK
2003-11-16 13:05
2004.03.28
OpehGL


3-1077177096
AVP_opck
2004-02-19 10:51
2004.03.28
тригер на недопущение повторения ID


4-1074078497
Petrovich
2004-01-14 14:08
2004.03.28
Не могу найти GetModuleUsage


1-1078475898
BBCHa
2004-03-05 11:38
2004.03.28
Изменения ячеек Excel


8-1069512473
maxXP
2003-11-22 17:47
2004.03.28
Видео




   Наверх