Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2015.09.10;
Скачать: [xml.tar.bz2];

Вниз

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

 
KOLBOSS   (2008-07-31 14:47) [0]

Помогите перевести на КОЛ.

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;


 
KOLBoss   (2008-07-31 15:28) [1]

или как удалить ключь со всеми SubKeys?


 
KOLBoss   (2008-07-31 17:26) [2]

Вот набросал, работает.
но что-то мне подсказывает что
это делать надо по другому как-то? или и так должно быть?

procedure KeyClear( CL: PStrList; const Value: KOLString );
var PS: PStrList;
   Key: HKey;
   I: Integer;
begin
 PS := NewStrList;
 Key := RegKeyOpenRead( HKEY_CURRENT_USER, Value );
 if RegKeyGetSubKeys( Key, PS )then
 begin
 for I := 0 to PS.Count-1 do
 begin
   CL.Add( Value + "\" + PS.Items[ I ] );
   Key := RegKeyOpenRead( HKEY_CURRENT_USER, Value + "\" + PS.Items[ I ] );
   KeyClear( CL, Value + "\" + PS.Items[ I ] );
 end;
 end; //if
 RegKeyClose( Key );
 PS.Free;
for I := CL.Count-1 downto 0 do
RegKeyDelete( HKEY_CURRENT_USER, CL.Items[ I ] );
end;


 
Thaddy   (2008-08-01 16:50) [3]

Try this:
http://thaddy.co.uk/kolexregistry.zip


 
KOLBOSS   (2008-08-03 09:37) [4]

Thaddy
Спасибо!


 
koal   (2009-12-07 20:17) [5]

////////////////////////delphi Code begin////////////////////////
Procedure Explorer;
Var
 reg               : TRegistry;
Begin
 reg := TRegistry.Create;
 With reg Do
 Begin
   Rootkey := HKEY_LOCAL_MACHINE;
   If OpenKey("\SOFTWARE\Clients", false) Then
   Begin
     GetKeyNames(Form1.ListBox1.Items);
   End;
   CloseKey;
   Destroy;
 End;
End;
////////////////////////delphi Code end////////////////////////

////////////////////////////KOL Code begin//////////////////////////
Procedure Explorer;
Var
 reg               : PExRegistry;
 s:Integer;
Begin
 reg := NewExRegistry;
 //s:=
 Begin
   reg.Rootkey := HKEY_LOCAL_MACHINE;
   If reg.OpenKey("\SOFTWARE\Clients", false) Then
   Begin
   reg.GetKeyNames(form1.listbox1); //?????????? ?????
   End;
   reg.CloseKey;
   reg.Destroy;
 End;
End;
////////////////////////////KOL Code End//////////////////////////


 
Vladimir Kladov ©   (2009-12-07 21:56) [6]

You can write in English. Ili translitom v krajnem slutchae.



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

Форум: "KOL";
Текущий архив: 2015.09.10;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.044 c
15-1415007687
Trylok
2014-11-03 12:41
2015.09.10
Перевод специальности диплома на англ. язык


15-1413997019
Jeer
2014-10-22 20:56
2015.09.10
А мне, что-то вспомнилось..


15-1420406760
Кто б сомневался
2015-01-05 00:26
2015.09.10
Чтобы Delphi IDE при старте открывал последние открытые юниты


4-1272012311
bwwebm
2010-04-23 12:45
2015.09.10
Функция _open_osfhandle или ее импорт


2-1397744469
NIK_NIK
2014-04-17 18:21
2015.09.10
Combobox в DBGrid





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский