15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


Как узнать стандартные папки Windows

Следующий пример демонстрирует получение списка стандартных директорий оболочки. Список директорий содержит в себе следующее: Favorites, Desktop, Programs, Fonts, SendTo, Start
Menu, Templates, Startup, Recent and NetHood.

Пример:

uses Registry;

procedure TForm1.Button1Click(Sender: TObject);
var
  reg : TRegistry;
  ts : TStrings;
  i : integer;
begin
  reg := TRegistry.Create;
  reg.RootKey := HKEY_CURRENT_USER;
  reg.LazyWrite := false;
  reg.OpenKey(
   'Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders',
              false);
    ts := TStringList.Create;
    reg.GetValueNames(ts);
    for i := 0 to ts.Count -1 do begin
      Memo1.Lines.Add(ts.Strings[i] +
                      ' = ' +
                      reg.ReadString(ts.Strings[i]));
    end;
    ts.Free;
  reg.CloseKey;
  reg.free;
end;