Einzelnen Beitrag anzeigen

jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#6
  Alt 26. Jun 2002, 11:45
Da Daniel gerade keine Zeit hat, poste ich einfach mal ein Beispiel. Vielleicht kann dir das ja helfen.
Code:
var
  reg: TRegistry;
  DataType: TRegDataType;
  DataInfo: TRegDataInfo;
  Value: string;
begin
  reg := TRegistry.Create;
  try
    if reg.OpenKeyReadOnly('\Software\Somewhere') then
    begin
      if reg.ValueExists('MeinWert') then
      begin
       { reg.GetDataInfo('MeinWert', DataInfo)
        DataType := DataInfo.RegData;
        // oder so wenn nur der Datentyp interessiert }
        DataType := reg.GetDataType('MeinWert');
        case DataType of
          rdUnknown: raise Exception.Create('Unbekannter Datentyp');
          rdString, rdExpandString: Value := reg.ReadString('MeinWert');
          rdInteger: Value := IntToStr(reg.ReadInteger('MeinWert'));
{          rdBinary:
          begin
            GetMem(Buffer, DataInfo.DataSize);
            reg.ReadBinaryData('MeinWert', Buffer^, DataInfo.DataSize);
            ...
            FreeMem(Buffer);
          end;}
        end;
      end;
      reg.CloseKey; // wird auch von reg.Free gemacht, aber der Ordnung zuliebe
    end;
  finally
    reg.Free;
  end;
end;
  Mit Zitat antworten Zitat