I have previously been using Chilkat Zip .Net to generate backup files from my application, but after having issues with the Component, moved to Xceed Zip .Net for the same function.
If you take one of the Zips generated with the Chilkat and attempt to extract using Xceed, 7Zip, WinZip then it fails.
If you take the same file and extract with Chilkat, Windows Zip, WinRar then the file extracts just fine.
Having a read on Wikipedia about the WinZip format I investigated the Central Directory and the Local File header, and it appears that the Chilkat component has written the Central Directory record filesize incorrectly. If you use something like FRHed to edit the Central Record and make the filesize the same as the Local Header size, then everything extracts correctly.
What would you recommend I do?
- Write a small utility using the Chilkat library to extract the Zip and then recompress with the Xceed Library
- Read the Zip file looking for the Necessary Zip Markers (as defined in the Spec) and then correct the Central Header.
- Some other combination.