Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#38

AW: d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ..

  Alt 1. Mai 2023, 15:47
Und noch etwas zum ersten Post

Zitat:
Delphi-Quellcode:
function ProgressCallback(Sender: Pointer; Total: Boolean; Value: Int64): HRESULT; stdcall;
begin
 BytesCopied := Value; // Test

 if Total then
  Form1.ProgressBar1.Max := 100
 else
  Form1.ProgressBar1.Position := GetPercent(BytesToCopy, BytesCopied);

 Result := S_OK;
end;

Arch.SetProgressCallback(nil, ProgressCallback);
Rate mal, warum solche Funktionen fast immer sowas wie einen frei benutzbaren "Data"-Parameter besitzen?

Delphi-Quellcode:
function ProgressCallback(Sender: Pointer; Total: Boolean; Value: Int64): HRESULT; stdcall;
begin
 //if Total then
 // TForm1(Sender).ProgressBar1.Max := 100
 //else
 // TForm1(Sender).ProgressBar1.Position := GetPercent(BytesToCopy, Value);

 if Total then begin
   TForm1(Sender).FBytesToCopy := Value;
   TForm1(Sender).ProgressBar1.Max := 100;
 end else
   TForm1(Sender).ProgressBar1.Position := GetPercent(TForm1(Sender).FBytesToCopy, Value);

 Result := S_OK;
end;

Arch.SetProgressCallback(Pointer(Form1), ProgressCallback);
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 1. Mai 2023 um 15:49 Uhr)
  Mit Zitat antworten Zitat