Показать сообщение отдельно
  #5  
Старый 06.07.2007, 14:03
Аватар для 4kusNick
4kusNick 4kusNick вне форума
Местный
 
Регистрация: 06.09.2006
Адрес: Россия, Санкт-Петербург
Сообщения: 444
Репутация: 550
По умолчанию

Странно, что не правильно, в апи такие ф-ии есть и там написано

Enumerates the subkeys of the specified open registry key. The function retrieves the name of one subkey each time it is called.
Вот и пример:

Код:
{ Создаем список всех подразделов указанного раздела }

procedure TForm1.Button1Click(Sender: TObject);

var

MyKey: HKey; { Handle для работы с разделом }

Buffer: array[0 .. 1000] of char; { Буфер }

Err, { Код ошибки }

index: longint; { Индекс подраздела }

begin

Err := RegOpenKey(HKEY_CLASSES_ROOT, 'DelphiUnit', MyKey); { Открыли раздел }

if Err <> ERROR_SUCCESS then

begin

   MessageDlg('Нет такого раздела !!', mtError, [mbOk], 0);

   exit;

end;

index := 0;

{Определили имя первого подраздела }

Err := RegEnumKey(MyKey, index, Buffer, Sizeof(Buffer));

while err = ERROR_SUCCESS do { Цикл, пока есть подразделы }

begin

   memo1.lines.add(StrPas(Buffer)); { Добавим имя подраздела в список }

   inc(index); { Увеличим номер подраздела }

   Err := RegEnumKey(MyKey, index, Buffer, Sizeof(Buffer)); { Запрос }

end;

RegCloseKey(MyKey); { Закрыли подраздел }

end;

Хорошо, что ты разобрался, но просто хочетсмя восставноить справедливось =)
Ведь не так уж я и неправ-)
__________________
THE CRACKER IS OUT THERE