Exemplo n.º 1
0
        public PooledZzipDir(String zipFile)
        {
            ZZipError zzipError = ZZipError.ZZIP_NO_ERROR;

            Ptr = ZipFile.ZipFile_OpenDir(zipFile, ref zzipError);

            if (zzipError != ZZipError.ZZIP_NO_ERROR)
            {
                String errorMessage;
                switch (zzipError)
                {
                case ZZipError.ZZIP_OUTOFMEM:
                    errorMessage = "Out of memory";
                    break;

                case ZZipError.ZZIP_DIR_OPEN:
                case ZZipError.ZZIP_DIR_STAT:
                case ZZipError.ZZIP_DIR_SEEK:
                case ZZipError.ZZIP_DIR_READ:
                    errorMessage = "Unable to read zip file";
                    break;

                case ZZipError.ZZIP_UNSUPP_COMPR:
                    errorMessage = "Unsupported compression format";
                    break;

                case ZZipError.ZZIP_CORRUPTED:
                    errorMessage = "Archive corrupted";
                    break;

                default:
                    errorMessage = "Unknown ZZIP error number";
                    break;
                }
                ;
                throw new ZipIOException("Could not open zip file {0} because of {1}", zipFile, errorMessage);
            }
        }
Exemplo n.º 2
0
 internal static extern IntPtr ZipFile_OpenDir(String file, ref ZZipError error);