Hallo kenu,
wenn du sicherstellen kannst, dass die fragliche Zahl immer den gleichen offset im file hat, dann kannst du die Zahl mit blanks auf eine definierte Länge bringen und den Zähler inplace patchen:
Delphi-Quellcode:
function IncCounter(fn: TFileName; dwOffset, dwLength: Cardinal): Cardinal;
var
value: String;
begin
with TFileStream.Create(fn, fmOpenReadWrite or fmShareDenyWrite) do
begin
Position := dwOffset;
SetLength(value, dwLength);
ReadBuffer(value[1], dwLength);
Result := StrToIntDef(Trim(value), 0) + 1;
value := IntToStr(Result);
Position := dwOffset;
WriteBuffer(value[1], dwLength);
Free;
end;
end;
Getippt und nicht getestet.
Grüße vom marabu