Einzelnen Beitrag anzeigen

toyoman

Registriert seit: 2. Jun 2003
323 Beiträge
 
Delphi 2010 Enterprise
 
#8
  Alt 15. Jul 2008, 14:39
Zitat von jbg:
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;
wie muss der BUFFER definiert werden?
Bei mir erkennt er diesen als nix.
  Mit Zitat antworten Zitat