Thema: Prism Registry und Typen

Einzelnen Beitrag anzeigen

MathiasSimmack
(Gast)

n/a Beiträge
 
#5

Re: Registry und Typen

  Alt 16. Jun 2004, 09:46
Es ist sogar noch einfacher. Ich habe ja vergessen, dass .NET durchaus auch Vorteile hat. Folgendes Beispiel löst mein Problem und zeigt zusätzlich auch noch den Typnamen (wenn auch im .NET-Format) an.
Delphi-Quellcode:
const
  szUninst = 'Software\Microsoft\Windows\CurrentVersion\Uninstall';

procedure TMainForm.LoadRegValues(const szName: string);
var
  reg : RegistryKey;
  vals : array of string;
  i : integer;
  li : ListViewItem;
  obj : TObject;
begin
  lv.BeginUpdate;
  lv.Items.Clear;

  // Schlüssel öffnen, ...
  reg := Registry.LocalMachine.OpenSubKey(szUninst + '\' + szName);
  if(reg <> nil) then
  try
    vals := reg.GetValueNames;
    if(length(vals) > 0) then
    begin
      for i := low(vals) to high(vals) do
      begin
        // Name, ...
        li := lv.Items.Add(vals[i]);
        obj := reg.GetValue(vals[i],nil);

        // ... & Typ, ...
        li.SubItems.Add(obj.GetType.ToString);

        // ... & Wert
        li.SubItems.Add(obj.ToString);
      end;

      SetLength(vals,0);
    end;
  finally
    reg.Close;
  end;

  lv.EndUpdate;
end;
Hintergedanke ist natürlich ein Programm, das die Liste der installierten Software in einem Tree-View anzeigt, und bei Auswahl eines Schlüssels (= Eintrag im TV) werden alle Einträge ermittelt und in einer List-View angezeigt.

Danke für die Denkanregung, Nico.
  Mit Zitat antworten Zitat