-
Notifications
You must be signed in to change notification settings - Fork 0
/
readme.txt
346 lines (247 loc) · 11.3 KB
/
readme.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
-- notes -----------------------------------------------------------------------------------------
the units included in this archive should work with delphi 5 through delphi xe3 for win32 and
win64.
please contact me if you find any errors, make any changes, add new functionality, or have any
general suggestions so that i may incorporate them into my version. i can be reached via my
website at
http://www.base2ti.com
thanks.
brent sherwood
-- disclaimer ------------------------------------------------------------------------------------
this software is provided "as-is", without any express or implied warranty. in no event will the
authors be held liable for any damages arising from the use of this software.
permission is granted to anyone to use this software for any purpose, including commercial
applications. please do not misrepresent the origin of this software. if you use this software
in a product, an acknowledgment in the product documentation (readme, about box, help file,
etc.) would be appreciated but is not required.
-- installation ----------------------------------------------------------------------------------
first, copy all of the files into a folder (for example, c:\delphi\zlib). next, include the
folder in the library path in the environment options. finally, "use" the zlibex and zlibexgz
units as needed.
-- contents --------------------------------------------------------------------------------------
delphi files
zlibex.inc
zlibex.pas
zlibexapi.pas
zlibexgz.pas
objects files used by zlibex.pas
win32\adler32.obj
win32\compress.obj
win32\crc32.obj
win32\deflate.obj
win32\infback.obj
win32\inffast.obj
win32\inflate.obj
win32\inftrees.obj
win32\trees.obj
win64\adler32.obj
win64\compress.obj
win64\crc32.obj
win64\deflate.obj
win64\infback.obj
win64\inffast.obj
win64\inflate.obj
win64\inftrees.obj
win64\trees.obj
zlib 1.2.8 source files (http://www.zlib.net)
zlib\adler32.c
zlib\compress.c
zlib\crc32.c
zlib\deflate.c
zlib\infback.c
zlib\inffast.c
zlib\inflate.c
zlib\inftrees.c
zlib\trees.c
zlib\zutil.c
zlib\crc32.h
zlib\deflate.h
zlib\inffast.h
zlib\inffixed.h
zlib\inflate.h
zlib\inftrees.h
zlib\trees.h
zlib\zconf.h
zlib\zlib.h
zlib\zutil.h
-- history ---------------------------------------------------------------------------------------
2013.05.23 zlibexapi.pas
updated to zlib version 1.2.8
zlibex.inc
updated for delphi xe3 (2013)
2012.05.23 zlibexgz.pas
updated for delphi xe2
added overloaded GZCompressFile
2012.05.21 zlibex.pas
updated for win64 (delphi xe2)
added NativeInt type for delphi 2007-
added NativeUInt type for delphi 2007-
zlibexapi.pas
updated for win64 (delphi xe2)
moved win32 obj files to win32 subfolder
changed win32 obj options to exclude the underscore
2012.05.07 zlibexapi.pas
updated to zlib version 1.2.7
2012.05.01 zlibex.inc
updated for delphi xe2 (2012)
2012.03.05 zliexapi.pas
udpated to zlib version 1.2.6
2011.07.21 zlibex.pas
fixed routines to validate size before calling Move
zlibexgz.pas
fixed routines to validate size before calling Move
2010.07.01 zlibex.pas
hide overloaded Z*String* routines for delphi 5
2010.05.02 zlibex.pas
added ZDeflateEx and ZInflateEx
2010.04.20 zlibex.pas
added TZ*Buffer classes
zlibexapi.pas
updated to zlib version 1.2.5
2010.04.15 zlibex.pas
moved core zlib routines to separate unit (ZLibExApi.pas)
zlibexapi.pas
updated to zlib version 1.2.4
2010.01.27 zlibex.pas
updated for delphi 2010
zlibexgz.pas
updated for delphi 2010
zlibex.inc
updated for delphi 2010
2009.04.14 zlibex.pas
added overloaded string routines for AnsiString and
UnicodeString
zlibexgz.pas
added overloaded string routines for AnsiString and
UnicodeString
removed deprecated Z*G routines
2009.04.11 zlibex.inc
updated to use CONDITIONALEXPRESSIONS and CompilerVersion
2009.01.28 zlibex.pas
updated for delphi 2009 String (UnicodeString)
zlibexgz.pas
updated for delphi 2009 String (UnicodeString)
zlibex.inc
updated for delphi 2009
2008.05.15 zlibex.pas
added TStreamPos type Stream.Position variants
added TCustomZStream.Stream* methods
zlibexgz.pas
added TGZCompressionStream and TGZDecompressionStream
2007.11.06 zlibexgz.pas
changed TGZTrailer.Crc from Cardinal to Longint
2007.10.01 zlibexgz.pas
added GZDecompressStreamSize
fixed GZDecompressStream position handling
zlibex.inc
updated for delphi 2007
2007.08.17 zlibex.pas
modified TZCompressionStream.Write to use Write instead of
WriteBuffer
2007.07.18 zlibexgz.pas
fixed GZCompressStr filename and comment processing
2007.03.18 zlibexgz.pas
modified naming convention for gzip routines GZ*
deprecated previous gzip routines Z*G
2007.03.15 zlibex.pas
moved gzip routines to separate unit - zlibexgz.pas
zlibexgz.pas
added ZDecompressStreamG
added overloaded ZCompressStrG
added overloaded ZCompressStreamG
2007.02.24 zlibex.pas
added PWord declaration for delphi 5-
2006.10.07 zlibex.pas
fixed EZLibError constructor for c++ builder compatibility
2006.08.10 zlibex.pas
added ZDecompressStrG (simple gzip format)
2006.06.02 zlibex.pas
added DateTimeToUnix for delphi 5-
2006.03.28 zlibex.pas
moved Z_DEFLATED to interface section
added custom compression levels zcLevel1 thru zcLevel9
2006.03.27 zlibex.pas
added ZCompressStreamWeb
added ZCompressStreamG (simple gzip format)
2006.03.24 zlibex.pas
added ZCompressStrG (simple gzip format)
added ZAdler32 and ZCrc32
2005.11.29 zlibex.pas
changed FStreamPos to Int64 for delphi 6+
2005.07.25 zlibex.pas
updated to zlib version 1.2.3
2005.03.04 zlibex.pas
modified ZInternalCompressStream loops
modified ZInternalDecompressStream loops
2005.02.07 zlibex.pas
fixed ZInternalCompressStream loop conditions
fixed ZInternalDecompressStream loop conditions
2005.01.11 zlibex.pas
updated to zlib version 1.2.2
added ZCompressStrWeb
2004.01.06 zlibex.pas
updated to zlib version 1.2.1
2003.04.14 zlibex.pas
added ZCompress2 and ZDecompress2
added ZCompressStr2 and ZDecompressStr2
added ZCompressStream2 and ZDecompressStream2
added overloaded T*Stream constructors to support InflateInit2
and DeflateInit2
fixed ZDecompressStream to use ZDecompressCheck instead of
ZCompressCheck
2002.03.15 zlibex.pas
updated to zlib version 1.1.4
2001.11.27 zlibex.pas
enhanced TZDecompressionStream.Read to adjust source stream
position upon end of compression data
fixed endless loop in TZDecompressionStream.Read when
destination count was greater than uncompressed data
2001.10.26 zlibex.pas
renamed unit to integrate "nicely" with delphi 6
2000.11.24 zlib.pas
added soFromEnd condition to TZDecompressionStream.Seek
added ZCompressStream and ZDecompressStream
2000.06.13 zlib.pas
optimized, fixed, rewrote, and enhanced the zlib.pas unit
included on the delphi cd (zlib version 1.1.3)
-- acknowledgments -------------------------------------------------------------------------------
erik turner - thanks for the enhancements and recommendations. specifically, the
ZCompressionStream and ZDecompressionStream routines. my apologies for the delay in getting
these in here.
david bennion - thanks for finding that nasty little endless loop quirk with the
TZDecompressionStream.Read method.
burak kalayci - thanks for emailing to inform me about the zlib 1.1.4 update; and again for
emailing about 1.2.1.
vicente sánchez-alarcos - thanks for emailing to inform me about the zlib 1.2.2 update.
luigi sandon - thanks for pointing out the missing loop condition (Z_STREAM_END) in
ZInternalCompressStream and ZInternalDecompressStream.
ferry van genderen - thanks for assisting me fine tune and beta test the ZInternalCompressStream
and ZInternalDecompressStream routines.
mathijs van veluw - thanks for emailing to inform me about the zlib 1.2.3 update.
j. rathlev - thanks for pointing out the FStreamPos and TStream.Position type inconsistency.
ralf wenske - thanks for prototyping and assisting with ZCompressStrG and ZCompressStreamG.
roman krupicka - thanks for pointing out the DateUtils unit and the DateTimeToUnix function
wasn't available prior to delphi 6.
anders johansen - thanks for pointing out the ELibError constructor incompatibility with c++
builder.
marcin treffler - thanks for pointing out the missing PWord declaration for delphi 5.
jean-jacques esquirol - thanks for pointing out the "result" address issue when processing
filename and comment flags/content in GZCompressStr; and for pointing out the type differences
with TGZTrailer.Crc (Cardinal) and ZCrc32 (Longint).
graham wideman - thanks for beta testing GZDecompressStreamSize and pointing out the position
handling issue in GZDecompressStream.
marcin szafrański - thanks for beta testing the delphi 2009 changes.
iztok kacin - thanks for the CONDITIONALEXPRESSIONS, CompilerVersion changes, and assisting me
design and further improve support for delphi 2009.
oleg matrozov - thanks for pointing out the missing loop condition (avail_in > 0) in
ZInternalCompress and ZInternalDecompress; and for prototyping and assisting with the
TZ*Buffer classes.
edward koo - thanks for pointing out the delphi 5 incompatibility with the overloaded Z*String*
routines.
farshad mohajeri - thanks for the paypal donation.
egron elbra - thanks for pointing out the range exception when moving empty strings.
tommi prami - thanks for emailing to inform me about the zlib 1.2.6 udpate.
marian pascalau - thanks for providing the win64 obj files and your win64 modifications.
marat safin - thanks for the paypal donation.
moacir schmidt - thanks for the paypal donation.
roman ganz - thanks for the paypal donation and informing me about the zlib 1.2.8 update.