[delphizip] Re: Error in "testing" zip if more than 65000 archivies.

  • From: "Roger Aelbrecht" <Aelbrecr@xxxxxxxxxx>
  • To: <delphizip@xxxxxxxxxxxxx>
  • Date: Thu, 13 Jan 2005 19:18:58 +0100

Ferran Artero (Grupo 77) wrote:
>   Hello !
>   This my first time in this list. Anybody can help me ?
>
>   I have a problem with the ZipMaster component. I'm using the v.
> 1.72, Delphi 5 and Windows 2000 SP4.
>
>   I use the "Add" method and after I want to test the result obtained.
>
>   If the "result.zip" contains 65000 aprox. or less then the test
> goes ok, but if there ara more archives, then the "OnMessage" event
> shows : "Error in archive warning - c:\Result.zip" and the ErrorCode
> is 8323336.
>
>   If I ask to the property "SuccessCnt" (after the warning message)
> give me a wrong result too.
>
>   I believe that after this message the test stops, but the
> "result.zip" is fine.
>
>
>
>   HOW CAN I TEST MY "result.zip" IF IT HAS MORE THAN 65000 ARCHIVES ?
>
>
>
>   Thanks.
>
>   (Sorry about my english).
>
>
>   SOURCE CODE :
>
> function COMPRIMIR(): boolean;
> begin
>
>   Result := False;
>
>   oZipMstr := TZipMaster.Create(Form);
>   oZipMstr.AddOptions := oZipMstr.AddOptions + [AddRecurseDirs];
>   oZipMstr.AddOptions  := oZipMstr.AddOptions + [AddDirNames];
>   oZipMstr.ZipFileName := Self.Path + ZIP_FILENAME;
>   oZipMstr.AddCompLevel := 3;
>   oZipMstr.RootDir := ROOT_DIR;
>   oZipMstr.FSpecArgs.Add('*');
>   oZipMstr.OnMessage := Self._MessageNow;
>   oZipMstr.Add;
>
>   if oZipMstr.ErrCode > 0 then begin
>     ShowMessage(IntToStr(oZipMstr.ErrCode));
>     Exit;
>   end;
>   if oZipMstr.Count < 1 then begin
>     Exit;
>   end;
>
>   oZipMstr.FSpecArgs.Clear;
>   oZipMstr.ExtrOptions := oZipMstr.ExtrOptions + [ExtrTest];
>   ResultExtract := oZipMstr.Extract;
>
>   if (ResultExtract <> 0) and
>     ShowMessage(IntToStr(ResultExtract));
>     Exit;
>   end;
>
>   if (oZipMstr.SuccessCnt <> oZipMstr.DirOnlyCount + oZipMstr.Count)
> then begin
>     ShowMessage('Error in number of archives');
>     Exit;
>   end;
>
>   Result := True;
>
> end;
> _______________________________
>
> Ferran  (ferran@xxxxxxxxxx)
>
> -----------
> To unsubscribe from this list, send an empty e-mail
> message to:
>   delphizip-request@xxxxxxxxxxxxx
> and put the word unsubscribe in the subject.

In the above code I noticed that you are using an OnMessage event handler.
Is this event handler sending the messages to a TMemo or something like 
that?
In that case you could be facing the size limit of TMemo.
Please try without the OnMessage event handler.

On the other hand, how big is the created result.zip
the version you are using is still limited to 2 GBytes

The resulting error code translates to Hex CB350 and I cannot relate that
to any of our errors in the UnzDll and certainly not to the values used in
TZipMaster.





BTW are you aware that we are already at version 1.78
since 1.72 we had 1.73, 1.76 and now 1.78

HTH

-- 
Roger Aelbrecht
http://home.tiscali.be/driehoeksw



-- 
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.6.11 - Release Date: 12/01/2005

-----------
To unsubscribe from this list, send an empty e-mail 
message to:
  delphizip-request@xxxxxxxxxxxxx 
and put the word unsubscribe in the subject.

Other related posts: