Danke Bummi für den Code.
Komischerweise findet er das vorkommen nicht, obwohl es vorhanden ist. Auch der Versuch den Memory im memo anzuzeigen (zum testen) geht nicht. Es wird nix angezeigt.
Delphi-Quellcode:
procedure TForm1.BtnCut3Click(Sender: TObject);
var
MS:TmemoryStream;
p1:Cardinal;
begin
// !! Positionen nicht 0 - basiert
MS := TMemoryStream.Create;
try
MS.LoadFromFile('.\temp\3.jpg');
p1 := Pos(#$FF#$D8,AnsiString(MS.Memory)) ;
rzmemo4.Text := ansistring(ms.Memory);
ListBox1.Items.Add(Format('Pos FFD8 %d',[p1]) );
p1 := PosEx( AnsiString('JFIF'),AnsiString(MS.Memory),p1);
ListBox1.Items.Add(Format('Pos JFIF %d',[p1]) );
p1 := PosEx(#$FF#$D9,AnsiString(MS.Memory),p1);
ListBox1.Items.Add(Format('Pos FFD9 %d',[p1]) );
finally
MS.Free;
end;
end;
Ist der Inhalt von Memory überhaupt schon HEX? Oder eher die "ÿØÿà JFIF `" Zeichen?