Announcement

Collapse
No announcement yet.

Daten aus Registry in Memo anzeigen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Daten aus Registry in Memo anzeigen

    Ich weis, wie ich in der Registry einen Ordner erstelle und Daten darin speichern kann. Wie kann ich aber die Daten aus der Registry auslesen und diese in einem Memo anzeigen lassen?

    Wie kann ich mehrere Zeilen in einem Registryordner speichern?
    Bisher habe ich es so gemacht, was leider nur einen Eintrag schreibt

    var
    Reg: TRegistry;
    begin
    Reg := TRegistry.Create;
    try
    Reg.RootKey := HKEY_USERS;
    if Reg.OpenKey('.default\SOFTWARE\Lohnabrechnung', TRUE)
    then Reg.WriteString('Install_Dir','"' + ParamStr(0) + '"');
    finally
    Reg.CloseKey;
    Reg.Free;
    inherited;
    end;

  • #2
    <p>Hallo Enrico,<br>
    <br>
    hier ein kleines Beispiel. Ich hoode es hilft:
    <pre>
    <p>
    type
    TProgEinstell=record
    Abteilung:Integer;
    Intervall:Integer;
    ShowHint :Bool;
    end; // TProgEinstell

    var
    ProgEinstell:TProgEinstell;

    procedure SchreibeProgEinstell;
    var aReg:TRegistry;
    begin
    aReg:=TRegistry.Create;
    with aReg, ProgEinstell do
    try
    RootKey:=HKEY_CURRENT_USER;
    if OpenKey('\Software\MAGNA\FSK_Scan', True) then
    begin
    WriteInteger('Abteilung', Abteilung);
    WriteInteger('Intervall', Intervall);
    WriteBool('ShowHint', ShowHint);
    end; // If
    finally
    Free;
    end; // Try
    end; // SchreibeProgEinstell
    </p>
    </pre>
    <br>
    Gruß Thomas<br></p&gt

    Comment


    • #3
      <p>Hallo Enrico,<br>
      <br>
      hier ein kleines Beispiel. Ich hoffe es hilft:
      <pre>
      <p>
      type
      TProgEinstell=record
      Abteilung:Integer;
      Intervall:Integer;
      ShowHint :Bool;
      end; // TProgEinstell

      var
      ProgEinstell:TProgEinstell;

      procedure SchreibeProgEinstell;
      var aReg:TRegistry;
      begin
      aReg:=TRegistry.Create;
      with aReg, ProgEinstell do
      try
      RootKey:=HKEY_CURRENT_USER;
      if OpenKey('\Software\MAGNA\FSK_Scan', True) then
      begin
      WriteInteger('Abteilung', Abteilung);
      WriteInteger('Intervall', Intervall);
      WriteBool('ShowHint', ShowHint);
      end; // If
      finally
      Free;
      end; // Try
      end; // SchreibeProgEinstell
      </p>
      </pre>
      <br>
      Gruß Thomas<br></p&gt

      Comment


      • #4
        Ähnliche Frage:
        Wie kann ich einen kompletten Registry-Ordner anzeigen lassen, ohne, dass ich seinen Inhalt kenne (wie es auch der RegEditor macht)

        Comment


        • #5
          Den Einstieg hierzu schafft man über TRegistry.GetKeyNames

          Auszug aus der Hilfe:
          ------------------------------------
          Die Methode gibt eine String-Liste mit den Namen aller Unterschlüssel zurück, die zum aktuellen Schlüssel gehören.

          procedure GetKeyNames(Strings: TStrings);

          Beschreibung

          Mit GetKeyNames ermitteln Sie die Namen aller Unterschlüssel, die dem aktuellen Schlüssel zugeordnet sind. Diese Informationen sind erforderlich, wenn in einer Anwendung über eine Reihe von Schlüsseln iteriert werden soll.

          Die Variable Strings besitzt den Typ TStrings und nimmt die Liste mit den Namen der Unterschlüssel auf.
          ------------------------------------

          Das sollte Dir die Lösung ermöglichen

          Comment

          Working...
          X