亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? unzip.c

?? WINDOWS下的ZIP解壓軟件,我是個學生,請讓我加入這個網站學習
?? C
?? 第 1 頁 / 共 5 頁
字號:
/*---------------------------------------------------------------------------

  unzip.c

  UnZip - a zipfile extraction utility.  See below for make instructions, or
  read the comments in Makefile and the various Contents files for more de-
  tailed explanations.  To report a bug, send a *complete* description to
  zip-bugs@cs.ucla.edu; include machine type, operating system and version,
  compiler and version, and reasonably detailed error messages or problem
  report.  To join Info-ZIP, send a message to info-zip-request@cs.ucla.edu.

  UnZip 5.x is a greatly expanded and partially rewritten successor to 4.x,
  which in turn was almost a complete rewrite of version 3.x.  For a detailed
  revision history, see UnzpHist.zip at Info-ZIP headquarters (below).  For a 
  (partial) list of the many (near infinite) contributors, see "CONTRIBS" in
  the UnZip source distribution.

  ---------------------------------------------------------------------------

  To compile (partial instructions):

     under Unix (cc):  make <system name>
       (type "make list" for a list of valid names, or read Makefile for 
       details.  "make unzip" works for most systems.  If you have a NEW
       system, not covered by any of the existing targets, send FULL infor-
       mation--hardware, OS, versions, etc.--to zip-bugs@cs.ucla.edu)

     under MS-DOS (MSC, Turbo C, or Borland C++):  use the makefiles or
       project files in the MSDOS sub-archive; edit or otherwise modify
       as appropriate.  For MSC, use NMAKE.

     under MS Windows 3.x:  get wunz12sr.{zip | zoo | whatever} and use
       the included makefile

     under OS/2 (MSC, gcc, IBM C Set/2, Watcom C):  make -f makefile.os2
       (from OS2 sub-archive; for MSC, use NMAKE)

     under VMS (VAX C or GNU C):  @make_unzip_vaxc  or  @make_unzip_gcc
       (from VMS sub-archive; can also use MMS or MAKE/VMS; see VMS.notes)

     under Macintosh OS:  Double click on unzip.make.  Press <Command>-M.
       (from MAC sub-archive)

     under Windows NT:  use makefile.nt (from NT sub-archive)

     under AmigaDOS:  try one of the makefiles in the AMIGA sub-archive;
       may need some work yet...

     under Atari TOS:  needs considerable work yet...

  ---------------------------------------------------------------------------

  Version:  unz50p1.{tar.Z | zip | zoo} for Unix, VMS, OS/2, MS-DOS, Windows,
              Windows NT, Macintosh and Amiga.  Decryption requires sources
              in zcrypt19.zip, and Windows (not NT) support requires sources
              in wunz12sr.zip.  See accompanying file "Where" in the main
              source distribution for ftp, uucp and mail-server sites.
  Copyrights:  see accompanying file "COPYING" in UnZip source distribution.

  ---------------------------------------------------------------------------*/





#include "unzip.h"               /* includes, defines, and macros */
#ifdef MSWIN
#  include "wizunzip.h"          /* see History.500 for version history */
#endif

#define VERSION  "5.0p1 of 12 January 1993"
/* #define VERSION  "v5.0p BETA of 8-21-92" */   /* internal beta level */
#define PAKFIX   /* temporary(?) solution to PAK-created zipfiles */





/**********************/
/*  Global Variables  */
/**********************/

int aflag=0;          /* -a: do ASCII to EBCDIC translation, or CR-LF  */
                      /*     to CR or LF conversion of extracted files */
/* int bflag=0; RESERVED for -b: extract as binary */
int cflag=0;          /* -c: output to stdout */
int fflag=0;          /* -f: "freshen" (extract only newer files) */
int jflag=0;          /* -j: junk pathnames */
int overwrite_none=0; /* -n: never overwrite files (no prompting) */
int overwrite_all=0;  /* -o: OK to overwrite files without prompting */
int force_flag=0;     /* (shares -o for now): force to override errors, etc. */
int quietflg=0;       /* -q: produce a lot less output */
#ifdef DOS_OS2
   int sflag=1;       /* -s: allow spaces (blanks) in filenames */
#endif /* DOS_OS2 */
int tflag=0;          /* -t: test */
int uflag=0;          /* -u: "update" (extract only newer & brand-new files) */
static int U_flag=0;  /* -U: leave filenames in upper or mixed case */
static int vflag=0;   /* -v: view directory (only used in unzip.c) */
int V_flag=0;         /* -V: don't strip VMS version numbers */
#ifdef VMS
   int secinf=0;      /* -X: keep owner/protection */
#endif /* VMS */
int zflag=0;          /* -z: display only the archive comment */
int process_all_files=0;

longint csize;        /* used by list_files(), ReadByte(): must be signed */
longint ucsize;       /* used by list_files(), unReduce(), explode() */

char *fnames[2] = {"*", NULL};   /* default filenames vector */
char **fnv = fnames;
char sig[5];
char answerbuf[10];

min_info info[DIR_BLKSIZ], *pInfo=info;

#ifdef OS2
   int longname;              /* used in extract.c, mapname.c and file_io.c */
   char longfilename[FILNAMSIZ];
#endif /* OS2 */

#ifdef CRYPT
   char *key = (char *)NULL;  /* password with which to decrypt data, or NULL */
#endif /* CRYPT */

/*---------------------------------------------------------------------------
    unShrink/unReduce/explode/inflate working storage and globals:
  ---------------------------------------------------------------------------*/

union work area;              /* see unzip.h for the definition of work */
ULONG crc32val;

UWORD mask_bits[] = {
    0x0000,
    0x0001, 0x0003, 0x0007, 0x000f, 0x001f, 0x003f, 0x007f, 0x00ff,
    0x01ff, 0x03ff, 0x07ff, 0x0fff, 0x1fff, 0x3fff, 0x7fff, 0xffff
};

/*---------------------------------------------------------------------------
    Input file variables:
  ---------------------------------------------------------------------------*/

byte *inbuf, *inptr;     /* input buffer (any size is legal) and pointer */
int incnt;

ULONG bitbuf;
int bits_left;
boolean zipeof;

int zipfd;               /* zipfile file handle */
#ifdef MSWIN
   char *zipfn;
#else
   char zipfn[FILNAMSIZ];
#endif

char local_hdr_sig[5] = "\120";    /* remaining signature bytes come later   */
char central_hdr_sig[5] = "\120";  /*  (must initialize at runtime so unzip  */
char end_central_sig[5] = "\120";  /*  executable won't look like a zipfile) */
/* char extd_local_sig[5] = "\120";  NOT USED YET */

cdir_file_hdr crec;      /* used in unzip.c, extract.c, misc.c */
local_file_hdr lrec;     /* used in unzip.c, extract.c */
ecdir_rec ecrec;         /* used in unzip.c, extract.c */
struct stat statbuf;     /* used by main(), mapped_name(), check_for_newer() */

longint extra_bytes = 0;        /* used in unzip.c, misc.c */
longint cur_zipfile_bufstart;   /* extract_or_test_files, readbuf, ReadByte */
  
#ifdef MACOS
   short  gnVRefNum;
   long  glDirID;
   OSType  gostCreator;
   OSType  gostType;
   boolean  fMacZipped;
   boolean  macflag;
   CursHandle  rghCursor[4];    /* status cursors */
   short  giCursor = 0;
#endif

/*---------------------------------------------------------------------------
    Output stream variables:
  ---------------------------------------------------------------------------*/

byte *outbuf;                   /* buffer for rle look-back */
byte *outptr;
byte *outout;                /* scratch pad for ASCII-native trans */
#ifdef MSWIN
   char *filename;
#else /* !MSWIN */
   char filename[FILNAMSIZ];
#endif /* ?MSWIN */
byte *extra_field = (byte *)NULL;  /* used by VMS, Mac and OS/2 versions */
longint outpos;                 /* absolute position in outfile */
int outcnt;                     /* current position in outbuf */
int outfd;
int mem_mode = 0;
int disk_full;

/*---------------------------------------------------------------------------
    unzip.c static global variables (visible only within this file):
  ---------------------------------------------------------------------------*/

static byte *hold;
static char unkn[10];
static longint ziplen;
static UWORD methnum;

/*---------------------------------------------------------------------------
    unzip.c repeated error messages (we use all of these at least twice)
  ---------------------------------------------------------------------------*/

char *EndSigMsg = "\nwarning:\
  didn't find end-of-central-dir signature at end of central dir.\n";
char *CentSigMsg =
  "error:  expected central file header signature not found (file #%u).\n";
char *SeekMsg =
  "error:  attempt to seek before beginning of zipfile\n%s";

#ifdef VMS
char *ReportMsg = "\
  (please check that you have transferred or created the zipfile in the\n\
  appropriate BINARY mode--this includes ftp, Kermit, AND unzip'd zipfiles)\n";
#else /* !VMS */
char *ReportMsg = "\
  (please check that you have transferred or created the zipfile in the\n\
  appropriate BINARY mode and that you have compiled unzip properly)\n";
#endif /* ?VMS */


#ifdef MSWIN
/* MS Windows Setup  and Take-Down functions bracket calls to 
 * process_zipfile().
 * These functions allocate and free the necessary buffers, set and clear
 * any global variables so that  process_zipfile()  can be called multiple
 * times in the same session of WizUnzip. You'll recognize some of the 
 * code from main() in SetUpToProcessZipFile().
 */
HANDLE hOutBuf;
HANDLE hInBuf;
HANDLE hZipFN;
HANDLE hFileName;

BOOL FSetUpToProcessZipFile(int ncflag, int ntflag, int nvflag, int nUflag, 
       int nzflag, int ndflag, int noflag, int naflag, int argc,
       LPSTR lpszZipFN, PSTR *FNV)
{
    /* clear all global flags -- need to or not. */

    tflag = vflag=cflag=aflag=U_flag=quietflg=zflag = 0;
    overwrite_all=overwrite_none=0;
    fnv = &fnames[0];       /* assign default file name vector */

	jflag = !ndflag; /* WizUnZip perspective is "recreate directory structure" */
    cflag = ncflag ; overwrite_all = noflag;
    tflag = ntflag ; vflag = nvflag; zflag = nzflag; U_flag = nUflag;
    aflag = naflag;
    sflag = 1;

    local_hdr_sig[0] = central_hdr_sig[0] = end_central_sig[0] = '\120';
    local_hdr_sig[1] = central_hdr_sig[1] = end_central_sig[1] = '\0';

	cur_zipfile_bufstart = 0L; 
    if (!(hZipFN = LocalAlloc(LMEM_MOVEABLE, FILNAMSIZ)))
        return FALSE;

    zipfn = (char *)LocalLock(hZipFN);
    lstrcpy(zipfn, lpszZipFN);
    if (stat(zipfn, &statbuf) || (statbuf.st_mode & S_IFMT) == S_IFDIR)
        strcat(zipfn, ZSUFX);

    if (stat(zipfn, &statbuf)) {  /* try again */
        fprintf(stderr, "error:  can't find zipfile [ %s ]\n", zipfn);
        return TRUE;              /* 9:  file not found */
    } else
        ziplen = statbuf.st_size;

    if (argc != 0) {
        fnv = FNV;
        process_all_files = FALSE;
    } else
        process_all_files = TRUE;       /* for speed */

/*---------------------------------------------------------------------------
    Okey dokey, we have everything we need to get started.  Let's roll.
  ---------------------------------------------------------------------------*/

    if (hInBuf = LocalAlloc(LMEM_MOVEABLE, INBUFSIZ+4)) {  /* 4 extra: hold[] */
        inbuf = (byte *) LocalLock(hInBuf);
        WinAssert(inbuf);
    }
    if (hOutBuf = LocalAlloc(LMEM_MOVEABLE, OUTBUFSIZ+1)) {  /* extra: ASCIIZ */
        outbuf = (byte *)LocalLock(hOutBuf);
        WinAssert(outbuf);
        outout = outbuf;  /*  point to outbuf */
    }
    if ( hFileName = LocalAlloc(LMEM_MOVEABLE, FILNAMSIZ)) {
        filename = (char *)LocalLock(hFileName);
        WinAssert(filename);
    }

    if ((inbuf == NULL) || (outbuf == NULL) || (outout == NULL) ||
        (zipfn == NULL) || (filename == NULL))
        return FALSE;

    hold = &inbuf[INBUFSIZ];   /* to check for boundary-spanning signatures */

    return TRUE;    /* set up was OK */
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
尤物在线观看一区| 国产精品一级黄| 欧美乱妇23p| 亚洲一卡二卡三卡四卡五卡| 成人v精品蜜桃久久一区| 亚洲综合久久久久| 久久久蜜桃精品| 欧美日韩国产综合久久| 国产高清无密码一区二区三区| 亚洲欧美一区二区三区国产精品| 日本福利一区二区| 国产激情精品久久久第一区二区| 洋洋成人永久网站入口| 久久久久久麻豆| 26uuu另类欧美| 欧美日韩不卡一区| 欧美在线一二三四区| 丁香天五香天堂综合| 蜜桃久久av一区| 日韩精品一二三区| 午夜一区二区三区视频| 日本一区二区三区电影| 日韩一级完整毛片| 欧美一区二区三区视频| 欧美高清一级片在线| 欧美综合一区二区三区| 91成人免费网站| 久久伊人蜜桃av一区二区| 精品日韩一区二区| 久久久久国产精品麻豆| 26uuu亚洲综合色欧美| 欧美一区二区三区在| 欧美tickling网站挠脚心| 日韩欧美精品在线| 久久久久久久久99精品| 久久久99久久| 亚洲欧美一区二区在线观看| 亚洲欧美自拍偷拍色图| 中文字幕在线一区免费| 亚洲精品国产一区二区三区四区在线| 中文字幕日韩一区| 亚洲一区二三区| 成人一区在线观看| av不卡免费在线观看| 欧美亚洲图片小说| 精品成人在线观看| 亚洲精品乱码久久久久久日本蜜臀| 亚洲视频电影在线| 美日韩黄色大片| 欧美在线不卡视频| 国产欧美在线观看一区| 亚洲va韩国va欧美va精品| 美女视频网站黄色亚洲| 色丁香久综合在线久综合在线观看| 日韩美女一区二区三区| 一区二区在线观看免费| 久久精品理论片| 日韩亚洲欧美在线| 亚洲午夜精品久久久久久久久| 国产99久久久精品| 国产亚洲制服色| 日韩欧美自拍偷拍| 国产成人在线网站| 亚洲精品一二三| 激情久久五月天| 日韩三级精品电影久久久| 亚洲欧洲另类国产综合| 久久99久久99| 日韩欧美中文字幕制服| 亚洲最大成人综合| 成a人片国产精品| 亚洲欧美影音先锋| 粉嫩av亚洲一区二区图片| 日韩一区二区在线观看视频播放| 亚洲伊人色欲综合网| 91麻豆精品国产91久久久久| 天天色图综合网| 日韩视频一区二区| 国产精品99久久久久久似苏梦涵 | 久久国产精品免费| 日韩一区二区三区免费观看| 日韩电影在线观看网站| 三级精品在线观看| 3d成人动漫网站| 久久国产视频网| 亚洲视频免费在线| 国产精品美女久久久久高潮| 欧美人妇做爰xxxⅹ性高电影| 国产一区二区调教| 日韩视频一区二区三区在线播放| 奇米777欧美一区二区| 欧美性大战久久| 亚洲伊人色欲综合网| 日本韩国欧美在线| 国产精品污网站| 欧美一区欧美二区| 99久久免费精品高清特色大片| 久久九九久久九九| 日韩一区二区免费高清| 欧洲一区二区三区在线| 免费不卡在线视频| 欧美一区二区播放| 欧美日韩一区精品| 成人一级黄色片| 亚洲综合久久久| 亚洲欧美激情在线| 欧美一区2区视频在线观看| 国产在线观看一区二区| 亚洲国产精品一区二区www| 日韩限制级电影在线观看| 91精品国产全国免费观看| 91年精品国产| 久久99精品国产麻豆婷婷| 欧美一卡二卡三卡四卡| 日本大香伊一区二区三区| 亚洲高清免费视频| 亚洲已满18点击进入久久| 中文字幕不卡在线播放| 亚洲日本在线a| 久久99精品国产麻豆婷婷| 99久久99久久精品国产片果冻| 在线播放91灌醉迷j高跟美女 | 成人一区在线看| 精品夜夜嗨av一区二区三区| 国产精品嫩草影院com| 欧美曰成人黄网| 精品午夜久久福利影院| 26uuu国产在线精品一区二区| 国产suv精品一区二区883| 国产精品一二一区| 蜜臀av在线播放一区二区三区| 性做久久久久久免费观看| 尤物视频一区二区| 久久精品国产亚洲高清剧情介绍| 国产精品99久久久久久有的能看| 成人毛片在线观看| 欧美日韩电影在线播放| 久久久精品欧美丰满| 亚洲综合色区另类av| 国产一区二区三区国产| 日本高清不卡在线观看| 久久久91精品国产一区二区三区| 亚洲精品国产品国语在线app| 九九久久精品视频| 欧美日本在线播放| 亚洲与欧洲av电影| 在线视频亚洲一区| 亚洲少妇30p| 91年精品国产| 亚洲精品成人天堂一二三| 大胆亚洲人体视频| 久久欧美一区二区| 成人精品免费视频| 日韩一区二区精品在线观看| 色婷婷精品久久二区二区蜜臀av | 国产亚洲欧美在线| 国产精品久久毛片a| 日本91福利区| 欧美日韩一区二区欧美激情| 亚洲美女电影在线| 色综合一个色综合| 日韩一区二区在线观看| 亚洲国产高清不卡| 日本vs亚洲vs韩国一区三区| 亚洲影院在线观看| 久久精品国产99国产| 日韩免费在线观看| 久久se精品一区精品二区| 成人黄色综合网站| 国产精品免费久久久久| 福利电影一区二区三区| 中文字幕乱码一区二区免费| 国产a久久麻豆| 亚洲日本免费电影| 欧美日韩亚洲综合| 国产乱一区二区| 亚洲一级二级三级在线免费观看| 欧美日韩综合色| 国产精品一区2区| 中文字幕日韩欧美一区二区三区| 欧美三级中文字幕在线观看| 男人操女人的视频在线观看欧美| 337p日本欧洲亚洲大胆精品| av中文字幕不卡| 青青草原综合久久大伊人精品 | 久久中文娱乐网| 欧美性色黄大片手机版| 国产精品一区二区久激情瑜伽| 国产精品成人午夜| 久久精品水蜜桃av综合天堂| 欧美性受xxxx| 在线视频一区二区免费| 成人免费看片app下载| 狠狠久久亚洲欧美| 麻豆精品精品国产自在97香蕉| 亚洲免费在线看| 国产精品美女久久福利网站| 精品理论电影在线| 欧美精品一区男女天堂| 精品国产乱码久久久久久1区2区|