![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Реестр [D6, XP]
al-al © (2006-04-05 08:47:00)Добрый день. Получить значение параметра в список из реестра это просто, а вот можно ли получить имя самого параметра из указанного ключа?
al-al (2006-04-05 10:22:00) [1]Palladin,спасибо, работает! Твой пример помог.
Сергей М. (2006-04-05 10:08:00) [2]
> эта процедура Reg.GetValueNames(Val); выдает значение параметра
Отсебячина.
Вот цитата из справки:
Returns a string list containing the namesof all data values associated with the current key
> мне нужно получать имя самого параметра из указанного ключа
Искомое тобой как раз есть один из элементов списка, возвращенного при GetValueNames()
al-al (2006-04-05 09:54:00) [3]нет не то. эта процедура Reg.GetValueNames(Val);выдает значение параметра, а мне нужно получать имя самого параметра из указанного ключа.
Palladin (2006-04-05 09:12:00) [4]
procedure TForm1.Button1Click(Sender: TObject);
var
Reg: TRegistry;
Val:TStringList;
I:Integer;
begin
Reg:=TRegistry.Create;
try
Val:=TStringList.Create;
try
Reg.RootKey:=HKEY_LOCAL_MACHINE; // Section to look for within the registry
if not Reg.OpenKey(Edit1.Text,False) then
ShowMessage('Error opening key')
else
begin
Reg.GetValueNames(Val);
for I:=0 to Val.Count-1 do
begin
ShowMessage(Edit1.Text + Chr(13) +
'has an Entry Called '+Val.Strings[I]+Chr(13)+
'With a Value of '+Reg.ReadString(Val.Strings[I]));
end;
if MessageDlg('Ok to delete the key and lose all these values?'
,Mtinformation,[mbYes,mbNo],0)=mryes then
Reg.DeleteKey(Edit1.Text);
end;
finally
Val.Free;
end;
finally
Reg.Free;
end;
end;
(с) справка
если я конечно правильно тебя понял