亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
一区二区三区精品视频| 99久久精品99国产精品| 欧美视频一区二区三区四区| 亚洲日韩欧美一区二区在线| 成人午夜大片免费观看| 久久精品一区二区三区不卡 | 午夜不卡在线视频| 欧美亚洲动漫另类| 亚洲第一会所有码转帖| 欧美福利一区二区| 五月综合激情婷婷六月色窝| 91精品欧美福利在线观看| 亚洲午夜激情网站| 精品人在线二区三区| 麻豆国产一区二区| 国产欧美精品区一区二区三区 | 成人手机电影网| 欧美精品高清视频| 一区二区三区精品在线| 成人午夜精品在线| 久久99精品国产.久久久久| 国产在线精品一区在线观看麻豆| 欧美日韩亚洲国产综合| 一区二区在线看| 色综合久久九月婷婷色综合| 亚洲天堂2014| 欧美主播一区二区三区美女| 亚洲一区欧美一区| 欧美唯美清纯偷拍| 日韩中文字幕av电影| 精品视频在线免费观看| 亚洲成人在线网站| 精品日韩av一区二区| 国产真实乱子伦精品视频| 国产精品久久久久婷婷| 色婷婷av一区二区三区大白胸| 图片区小说区国产精品视频| 91精品国产高清一区二区三区蜜臀 | 亚洲v中文字幕| 欧美tk—视频vk| 日韩免费一区二区| 91精品在线一区二区| 色又黄又爽网站www久久| 国产mv日韩mv欧美| 国产精品18久久久久久久久久久久 | 亚洲黄色免费电影| 欧美日韩免费一区二区三区| 午夜电影网一区| 国产蜜臀av在线一区二区三区| 色综合一个色综合亚洲| 蜜桃久久久久久久| 国产精品区一区二区三区| 欧美人妇做爰xxxⅹ性高电影| 激情小说欧美图片| 日本sm残虐另类| 丝袜美腿成人在线| 亚洲另类春色校园小说| 久久久91精品国产一区二区三区| 在线观看视频一区二区欧美日韩| 国产老女人精品毛片久久| 秋霞成人午夜伦在线观看| 亚洲chinese男男1069| 亚洲黄色小视频| 一个色综合网站| 又紧又大又爽精品一区二区| 国产精品色一区二区三区| 国产三级欧美三级日产三级99 | 国产一区激情在线| 捆绑调教一区二区三区| 免费在线观看日韩欧美| 日韩成人一级片| 国产综合久久久久影院| 久久99久久99精品免视看婷婷| 久久国产生活片100| 国产乱人伦偷精品视频不卡 | 在线播放日韩导航| 色婷婷综合久久久久中文一区二区 | 6080yy午夜一二三区久久| 欧美另类z0zxhd电影| 日韩免费观看高清完整版| 精品国产乱码久久久久久浪潮 | 国产精品三级视频| 一区二区三区四区亚洲| 日韩高清在线电影| 从欧美一区二区三区| 色综合天天综合| 91精品国产日韩91久久久久久| 国产亚洲人成网站| 一区二区视频在线| 国产美女精品一区二区三区| 色八戒一区二区三区| 亚洲精品一区二区三区蜜桃下载 | 波多野结衣精品在线| 欧美三级蜜桃2在线观看| 久久久精品国产免大香伊| 亚洲成人免费在线| 不卡欧美aaaaa| 日韩精品一区二区三区蜜臀 | 99re成人在线| 欧美精品一区二区三区在线| 日韩国产欧美三级| 欧美日韩黄色影视| 亚洲电影激情视频网站| 在线观看精品一区| 亚洲色欲色欲www在线观看| 成人h精品动漫一区二区三区| 日韩欧美在线一区二区三区| 亚洲成人av中文| 欧美日韩一区成人| 日本不卡中文字幕| 欧美一二三区精品| 国产在线麻豆精品观看| 国产日韩精品一区二区三区在线| 麻豆成人在线观看| 国产视频亚洲色图| 99麻豆久久久国产精品免费| 亚洲日本中文字幕区| 色噜噜狠狠色综合中国| 性久久久久久久久| 久久久精品国产免大香伊| zzijzzij亚洲日本少妇熟睡| 亚洲国产精品一区二区尤物区| 欧美日本国产视频| 国产91高潮流白浆在线麻豆| 中文字幕色av一区二区三区| 色偷偷久久人人79超碰人人澡| 丝袜亚洲另类欧美综合| 中文字幕av不卡| 91精品国产综合久久精品性色| 成人免费毛片嘿嘿连载视频| 亚洲地区一二三色| 中文字幕人成不卡一区| 51久久夜色精品国产麻豆| 国产精品一区二区免费不卡| 亚洲综合无码一区二区| 国产欧美日韩不卡| 欧美一区二区视频在线观看2020 | 美腿丝袜亚洲色图| 亚洲国产精品一区二区www在线 | 欧美日韩aaaaaa| 色婷婷国产精品久久包臀| 99精品国产热久久91蜜凸| 国产成人精品一区二| 青青草原综合久久大伊人精品优势| 亚洲人成网站影音先锋播放| 亚洲天堂成人网| 中文字幕一区二| 成人欧美一区二区三区白人| 国产精品午夜电影| 亚洲人成网站在线| 亚洲欧美偷拍三级| 亚洲一区二区精品视频| 亚洲第一狼人社区| 国产一区二区三区免费观看| 国产毛片精品视频| 成人av电影在线| 欧美美女一区二区三区| 欧美一级理论片| 久久免费午夜影院| 亚洲精品视频在线观看网站| 亚洲国产美国国产综合一区二区| 奇米影视在线99精品| 国产一区二区毛片| 91看片淫黄大片一级在线观看| 欧美日韩性生活| 国产亚洲欧美日韩在线一区| 亚洲色图在线视频| 欧美a级一区二区| 一本大道av一区二区在线播放| 宅男在线国产精品| 专区另类欧美日韩| 高清不卡在线观看av| 欧美美女激情18p| 中文字幕日韩一区二区| 激情综合色综合久久综合| 在线观看视频一区二区| 国产视频一区二区在线| 免费高清在线一区| 91精品国产91久久综合桃花| 成人欧美一区二区三区视频网页 | 成人一区二区三区在线观看| 日韩一区和二区| 亚洲午夜电影网| 欧美日韩在线播放| 亚洲永久免费av| 欧美午夜电影在线播放| 一区二区三区在线视频免费观看| 99精品视频在线观看免费| 国产精品嫩草久久久久| av一区二区三区黑人| 中文字幕在线免费不卡| 在线中文字幕不卡| 日韩福利电影在线观看| 日韩欧美国产综合在线一区二区三区| 亚洲国产精品久久久久婷婷884 | 精品一区二区综合| 欧美韩国日本一区| 欧美肥妇bbw| 国内外成人在线视频| 国产精品免费人成网站|