Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Wie ZLib weitgehend unabhängig von classes.pas ? (https://www.delphipraxis.net/153370-wie-zlib-weitgehend-unabhaengig-von-classes-pas.html)

stho 2. Aug 2010 15:35

AW: Wie ZLib weitgehend unabhängig von classes.pas ?
 
naja, die classes will ich ja nicht nutzen... :?
danke für die .pas datei von dir die du angehangen hast :thumb:
werde mir die in den kommenden 1-2 tagen mal anschauen... :pale:
aber so auf den ersten blick sehen einige funktionen redefiniert aus.
Naja, aber vielen dank schonmal dafür...
sobald ich eine passende lösung gefunden habe (vielleicht doch eine kleine TStream-klasse?) werde ich sie hier posten...

himitsu 2. Aug 2010 15:46

AW: Wie ZLib weitgehend unabhängig von classes.pas ?
 
Zitat:

Zitat von stho (Beitrag 1039017)
vielleicht doch eine kleine TStream-klasse?

Theoretisch, von den Methoden und Feldern her, könnte man schon etwas gleich aufbauen.

Aber es wird und kann niemals kompatibel zu anderen TStream-Nachfahren sein, da es laut RTTI immer einen unterschiedlichen Ursprung haben wird.

turboPASCAL 2. Aug 2010 20:25

AW: Wie ZLib weitgehend unabhängig von classes.pas ?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe mal in die ZLib geguckt, eigentlich braucht es die Streams nicht.
Man kann doch über Pointer die Daten Zuweisen.


Delphi-Quellcode:
unit
  uZippozip;

interface

const
  ZIPDLL = 'Zippozip.dll';

type
  TZAlloc   = function (opaque: Pointer; items, size: Integer): Pointer;
  TZFree    = procedure (opaque, block: Pointer);
  TOnProcess = procedure(percent: integer); stdcall;

  TZCompressionLevel = (
    zcNone,
    zcFastest,
    zcDefault,
    zcMax,
    zcLevel1,
    zcLevel2,
    zcLevel3,
    zcLevel4,
    zcLevel5,
    zcLevel6,
    zcLevel7,
    zcLevel8,
    zcLevel9
  );

procedure ZCompress(const inBuffer: Pointer; inSize: Integer;
  out outBuffer: Pointer; out outSize: Integer;
  level: TZCompressionLevel = zcDefault); stdcall;
  external ZIPDLL;

procedure ZDecompress(const inBuffer: Pointer; inSize: Integer;
  out outBuffer: Pointer; out outSize: Integer; outEstimate: Integer = 0);
  stdcall; external ZIPDLL;

implementation

end.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:47 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz