Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#10

Re: Stringreplace mit einer unbekannten

  Alt 15. Jun 2007, 10:27
Hallo,

Zitat von ReVenGer:
... Die Datei wir in Hex eingelesen und im Memo angezeigt. Im Memo möchte ich diese Hexwerte nun editieren. ...
nach meiner Auffassung liest du eine Binär-Datei ein und willst sie an bestimmten Stellen patchen:

Delphi-Quellcode:
// Getippt und nicht getestet.

procedure TDemoForm.ButtonClick(Sender: TObject);
var
  s: string;
  fn: TFileName;
  fs: TFileStream;
begin
  fs := TFileStream.Create(fn, fmOpenReadWrite or fmShareDenyWrite);
  SetLength(s, fs.Size);
  fs.ReadBuffer(s[1], fs.Size);
  if PatchString(s, #$3B#$00#$01#$00, #$02) then
  begin
    fs.Position := 0;
    fs.WriteBuffer(s[1], Length(s));
  end;
  fs.Free;
end;
Dieses Code-Fragment überschreibt das Byte, welches deiner Byte-Signatur 3B 00 01 00 direkt folgt, mit dem Wert 02.

Freundliche Grüße
  Mit Zitat antworten Zitat