DecompressionStream :TDecompressionStream;
count, i :integer;
buf:pchar;
begin
SFile:=TMemoryStream.Create;
Sfile.LoadFromFile('ab.dat');
sfile.Read( count, sizeof(count) );
getmem(buf,count);
DecompressionStream:=TDecompressionStream.Create(sfile);
//-------上面这行不知道怎么在BCB里面用??
Decompressionstream.ReadBuffer(buf^,count);
sfile.Clear ;
sfile.WriteBuffer(buf^,count);
sfile.position:=0;
decompressionstream.free;
freemem(buf);
上面这段代码不知道做了些什么东西?有什么用?望大家解释一下
13 个解决方案
#1
应该是用 zlib 解压缩一个文件
#2
DecompressionStream:=TDecompressionStream.Create(sfile);
在BCB里面应该是
DecompressionStream=new TDecompressionStream(sfile);
在BCB里面应该是
DecompressionStream=new TDecompressionStream(sfile);
#3
这个好像是PASCALLJ里面的结构一样,有BEGIN应该有END。
这个程序是将一个文件放入内存,然后再进行压缩。
这个程序是将一个文件放入内存,然后再进行压缩。
#4
关键是不知道TDecompressionStream在BCB里面包含哪个头文件啊
#5
DecompressionStream是个什么对象? xpdavis(咕嘟) 说的应当对.
或者是加密吧?
或者是加密吧?
#6
http://www.yesky.com/20030311/1656296.shtml
#7
谢谢 CKER提供的连接,在DELPHI6里面有个ZLIB。DCU的文件,DELPHI7里面还多了一个ZLIB。PAS文件,所以都能正常使用,但在BCB里面找不到ZLIB开头的任何文件,不知道在BCB里面怎么才能用这个类呢?
#8
关注,以前直接用过的,现在忘了。
#9
在工程加入ZLIB.PAS,编译产生.ojb .hpp,去除ZLIB.PAS,加入ZLIB.OBJ,#include "ZLIB.HPP"
#10
to qiuafa:
在编译ZLIB。PAS文件的时候,提示错误是:
File not found: 'deflate.obj'
现在还有很多一样的错误,只是后面的文件名不一样,
错误位置是在这几行上面:
{$IFDEF MSWINDOWS}
{$L deflate.obj}
{$L inflate.obj}
{$L inftrees.obj}
{$L trees.obj}
{$L adler32.obj}
{$L infblock.obj}
{$L infcodes.obj}
{$L infutil.obj}
{$L inffast.obj}
是从ZLIB。PAS文件里面拷贝出来的,但不管是在DELPHI目录也好,BCB目录也好都找不到这些文件,这是怎么会事?
在编译ZLIB。PAS文件的时候,提示错误是:
File not found: 'deflate.obj'
现在还有很多一样的错误,只是后面的文件名不一样,
错误位置是在这几行上面:
{$IFDEF MSWINDOWS}
{$L deflate.obj}
{$L inflate.obj}
{$L inftrees.obj}
{$L trees.obj}
{$L adler32.obj}
{$L infblock.obj}
{$L infcodes.obj}
{$L infutil.obj}
{$L inffast.obj}
是从ZLIB。PAS文件里面拷贝出来的,但不管是在DELPHI目录也好,BCB目录也好都找不到这些文件,这是怎么会事?
#11
只要compile .pas,不要link.产生.obj .hpp即达到目的。
最后加入.obj,在link,如果link出错,那就表示还有相关的.pas也需要这样加入。
最后加入.obj,在link,如果link出错,那就表示还有相关的.pas也需要这样加入。
#12
to qiuafa:
你说的没错,在编译的时候缺少ZLibConst.PAS文件,我从DELPHI目录下拷过来,再编译的时候就出现了上面的那错误
你说的没错,在编译的时候缺少ZLibConst.PAS文件,我从DELPHI目录下拷过来,再编译的时候就出现了上面的那错误
#13
呵呵,那些文件都是开放源码的zlib源代码,编译得到的obj文件,delphi带的两个pas文件不过封装了一下罢了。
所以这个编译的时候比较麻烦,delphi并没有提供这些obj,一切都已经由dcu与编译过了。
但是bcb使用的时候没有zlib.pas生成的.hpp和obj是不行的。
所以你需要先从zlib编译得到这些obj才可以顺利地编译zlib.pas.比较麻烦,我手头没有delphi,没有这两个pas文件,不好试验。sorry
所以这个编译的时候比较麻烦,delphi并没有提供这些obj,一切都已经由dcu与编译过了。
但是bcb使用的时候没有zlib.pas生成的.hpp和obj是不行的。
所以你需要先从zlib编译得到这些obj才可以顺利地编译zlib.pas.比较麻烦,我手头没有delphi,没有这两个pas文件,不好试验。sorry
#1
应该是用 zlib 解压缩一个文件
#2
DecompressionStream:=TDecompressionStream.Create(sfile);
在BCB里面应该是
DecompressionStream=new TDecompressionStream(sfile);
在BCB里面应该是
DecompressionStream=new TDecompressionStream(sfile);
#3
这个好像是PASCALLJ里面的结构一样,有BEGIN应该有END。
这个程序是将一个文件放入内存,然后再进行压缩。
这个程序是将一个文件放入内存,然后再进行压缩。
#4
关键是不知道TDecompressionStream在BCB里面包含哪个头文件啊
#5
DecompressionStream是个什么对象? xpdavis(咕嘟) 说的应当对.
或者是加密吧?
或者是加密吧?
#6
http://www.yesky.com/20030311/1656296.shtml
#7
谢谢 CKER提供的连接,在DELPHI6里面有个ZLIB。DCU的文件,DELPHI7里面还多了一个ZLIB。PAS文件,所以都能正常使用,但在BCB里面找不到ZLIB开头的任何文件,不知道在BCB里面怎么才能用这个类呢?
#8
关注,以前直接用过的,现在忘了。
#9
在工程加入ZLIB.PAS,编译产生.ojb .hpp,去除ZLIB.PAS,加入ZLIB.OBJ,#include "ZLIB.HPP"
#10
to qiuafa:
在编译ZLIB。PAS文件的时候,提示错误是:
File not found: 'deflate.obj'
现在还有很多一样的错误,只是后面的文件名不一样,
错误位置是在这几行上面:
{$IFDEF MSWINDOWS}
{$L deflate.obj}
{$L inflate.obj}
{$L inftrees.obj}
{$L trees.obj}
{$L adler32.obj}
{$L infblock.obj}
{$L infcodes.obj}
{$L infutil.obj}
{$L inffast.obj}
是从ZLIB。PAS文件里面拷贝出来的,但不管是在DELPHI目录也好,BCB目录也好都找不到这些文件,这是怎么会事?
在编译ZLIB。PAS文件的时候,提示错误是:
File not found: 'deflate.obj'
现在还有很多一样的错误,只是后面的文件名不一样,
错误位置是在这几行上面:
{$IFDEF MSWINDOWS}
{$L deflate.obj}
{$L inflate.obj}
{$L inftrees.obj}
{$L trees.obj}
{$L adler32.obj}
{$L infblock.obj}
{$L infcodes.obj}
{$L infutil.obj}
{$L inffast.obj}
是从ZLIB。PAS文件里面拷贝出来的,但不管是在DELPHI目录也好,BCB目录也好都找不到这些文件,这是怎么会事?
#11
只要compile .pas,不要link.产生.obj .hpp即达到目的。
最后加入.obj,在link,如果link出错,那就表示还有相关的.pas也需要这样加入。
最后加入.obj,在link,如果link出错,那就表示还有相关的.pas也需要这样加入。
#12
to qiuafa:
你说的没错,在编译的时候缺少ZLibConst.PAS文件,我从DELPHI目录下拷过来,再编译的时候就出现了上面的那错误
你说的没错,在编译的时候缺少ZLibConst.PAS文件,我从DELPHI目录下拷过来,再编译的时候就出现了上面的那错误
#13
呵呵,那些文件都是开放源码的zlib源代码,编译得到的obj文件,delphi带的两个pas文件不过封装了一下罢了。
所以这个编译的时候比较麻烦,delphi并没有提供这些obj,一切都已经由dcu与编译过了。
但是bcb使用的时候没有zlib.pas生成的.hpp和obj是不行的。
所以你需要先从zlib编译得到这些obj才可以顺利地编译zlib.pas.比较麻烦,我手头没有delphi,没有这两个pas文件,不好试验。sorry
所以这个编译的时候比较麻烦,delphi并没有提供这些obj,一切都已经由dcu与编译过了。
但是bcb使用的时候没有zlib.pas生成的.hpp和obj是不行的。
所以你需要先从zlib编译得到这些obj才可以顺利地编译zlib.pas.比较麻烦,我手头没有delphi,没有这两个pas文件,不好试验。sorry