delphi - JEDI JCL Compression library wont open spanned archive files -


summary:

i having trouble jcl compression library open spanned archives. presents error "(0000001) incorrect function" defined in borlands 'windows.pas';

scenerios:

a single archive compressed using jcl compression example.
-will uncompress in both jcl example , 7zip gui.

a spanned archive on 7 files compressed using jcl compression example.
-will uncompress in 7zip gui. fails uncompress using jcl example.

a single archive compressed using 7zip gui.
-will uncompress in both jcl example , 7zip gui.

a spanned archive compressed on 7 files using 7zip gui.
-will uncompress in 7zip gui. fails uncompress using jcl

extra information

the jcl compression demo 1 included jcl library.
jcl: 2.2.1.3970
7zip dll: 9.20.0.0 , 9.65.0.0
example filename in spanned archive set: "test archive.7z.002"
tried both .tar , .7z compression
different file sizes used. 2048 bytes , 2048kb
delphi 2009.

this code im using. jcl compression demo. error occurs on line 'tjcldecompressarchive(farchive).listfiles'.

procedure tformmain.actionopenroexecute(sender: tobject); var   archivefilename, password: string;   aformat: tjcldecompressarchiveclass;   splitarchive: boolean; begin   if opendialogarchivero.execute   begin     closearchive;  archivefilename := opendialogarchivero.filename; splitarchive := ansisametext(extractfileext(archivefilename), '.001'); if splitarchive   archivefilename := changefileext(archivefilename, '');  aformat := getarchiveformats.finddecompressformat(archivefilename);  if aformat <> nil begin   if splitarchive     archivefilename := archivefilename + '.%.3d';    inputquery('archive password', 'value', password);    farchive := aformat.create(archivefilename, 0, splitarchive);   farchive.password := password;   farchive.onprogress := archiveprogress;    if farchive tjcldecompressarchive     tjcldecompressarchive(farchive).listfiles   else   if farchive tjclupdatearchive     tjclupdatearchive(farchive).listfiles;    listview1.items.beginupdate;   try     while listview1.items.count < farchive.itemcount       listview1.items.add;       listview1.items.endupdate;   end; end else   showmessage('not supported format');   end; end; 

the jcl example know files , open them. (zip format used in image. same problem). image of files opened jcl compression example.

prehaps has come across before?.
can point me in right direction please?.
thank time.

scott m.

this bug exists in project jedi - issue tracker.

http://issuetracker.delphi-jedi.org/bug_view_advanced_page.php?bug_id=5137

two possible work-around

  • upgrade jcl installation latest daily build
  • comment following line in jclcompression.pas @ procedure tjclsevenzipdecompressarchive.openarchive; , rebuild packages.

    // comment line !
    sevenzipcheck(inarchive.open(ainstream, @maxcheckstartposition, opencallback));


Comments

Popular posts from this blog

c++ - Is it possible to compile a VST on linux? -

java - Output of Eclipse is rubbish -

jquery - Confused with JSON data and normal data in Django ajax request -