OK, da ist der Integer wohl etwas zu klein
ersetze mal diese Zeilen (3 mal)
Delphi-Quellcode:
If Assigned(FProgress) Then FProgress(Self, Length(Value)
* 9999 div Integer(P - Integer(Value)));
durch diese
Delphi-Quellcode:
If Assigned(FProgress) Then FProgress(Self, Int64(Length(Value))
* 9999 div ((Integer(P) - Integer(Value)) div SizeOf(Char)));
wobei es so auch gehn sollte
Delphi-Quellcode:
If Assigned(FProgress) Then FProgress(Self, Trunc(Length(Value)
* 9999.0 / ((Integer(P) - Integer(Value)) div SizeOf(Char))));
bzw. ich hab es in Beitrag #7 schon ersetzt
(hoffentlich stimmt nun auch die Klammersetzung)