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

Код:
{ 

This example demonstrates how to enumerate all registry keys from 

a certain key (here: HKEY_CURRENT_USER) 

}

 

 

 

 

uses

  Registry;

 

procedure TForm1.Button1Click(Sender: TObject);

var

  indent: Integer;

 

     procedure EnumAllKeys(hkey: THandle);

  var

    l: TStringList;

    n: Integer;

  begin

    Inc(indent, 2);

    with TRegistry.Create do

      try

        RootKey := hkey;

        OpenKey(EmptyStr, False);

        l := TStringList.Create;

        try

          GetKeynames(l);

          CloseKey;

          for n := 0 to l.Count - 1 do

          begin

            memo1.Lines.Add(StringOfChar(' ', indent) + l[n]);

            if OpenKey(l[n], False) then

            begin

              EnumAllKeys(CurrentKey);

              CloseKey;

            end;

          end;

        finally

          l.Free

        end;

      finally

        Free;

      end;

    Dec(indent, 2);

  end;

 

begin

  Memo1.Clear;

  Memo1.Lines.Add('Keys under HKEY_CURRENT_USER');

  indent := 0;

  Memo1.Lines.BeginUpdate;

  try

    EnumAllKEys(HKEY_CURRENT_USER);

  finally

    Memo1.Lines.EndUpdate;

  end;

end;
__________________
THE CRACKER IS OUT THERE
Ответить с цитированием