Dann mußt du halt noch einen Divisor mit einbauen, welche die Werte vor der Übergabe an die ProgressBar anpaßt diesen kannst du ja setzen, sobald du die Dateigröße bekommst, also in CEXM_MAXBYTES.
Etwa so:
Delphi-Quellcode:
CEXM_MAXBYTES:
begin
if Int64(Msg.WParam) shl 32 + Msg.LParam <= $7FFFFFFF then Divisor := 1
else Divisor := (Int64(Msg.WParam) shl 32 + Msg.LParam) div $7FFFFFFF;
ProgressBar1.Max := Msg.WParam + Msg.LParam;
(Int64(Msg.WParam) shl 32 + Msg.LParam) div Divisor
PS: Lackie, muß in WndProc nicht
Msg.WParam + Msg.LParam
so sein?
Int64(Msg.WParam) shl 32 + Msg.LParam
Mist zu langsam -.-''