Einzelnen Beitrag anzeigen

Poring

Registriert seit: 7. Nov 2007
104 Beiträge
 
#14

Re: Verschlüsselte Ini lesen?

  Alt 27. Jan 2008, 13:53
Da ich das Schreiben nicht benötige, wäre dies dann der Code?

Delphi-Quellcode:
procedure XORMem(Data: Pointer; Len: Int64);
var
  I: Cardinal;
begin
  for I := 0 to Len do
  begin
    PByte(Cardinal(Data) + I)^ := 23 xor PByte(Cardinal(Data) + I)^;
  end;
end;

var
  Ini: TMemIniFile;
  Lines: TStringList;
  S: String;
begin
  Lines := TStringList.Create;
  try
    // Datei laden und entschlüsseln, fals schon angelegt
    if FileExists(ExtractFilePath(ParamStr(0)) + 'test.ini') then
    begin
      Lines.LoadFromFile(ExtractFilePath(ParamStr(0)) + 'test.ini');
      S := Lines.Text;
      XORMem(@S[1], Length(S));
      Lines.Text := S;
    end;
    // Diese Datei landet nie auf der Festplatte
    Ini := TMemIniFile.Create(ExtractFilePath(ParamStr(0)) + 'test.tmp');
    try
      Ini.SetStrings(Lines);
      // Hier kann ganz normal mit der Ini gearbeitet werden - heir etwas geändert
      i:=ini.ReadString('Name', 'Eintrag1', '');
      label2.caption:=i;
      ReadLn;
      // speichern entfernt
    finally
      Ini.Free;
    end;
  finally
    Lines.Free;
  end;
end.
  Mit Zitat antworten Zitat