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

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

?? intrface.cpp

?? zip壓縮
?? CPP
?? 第 1 頁 / 共 4 頁
字號:
         if (g_pExtractInfo->fExtract && *efn) {            // Make sure the user is aware that this file is screwed.            SendMessage(g_hWndMain, WM_PRIVATE, MSG_ADD_TEXT_TO_EDIT,                        (LPARAM)"warning: ");            SendMessage(g_hWndMain, WM_PRIVATE, MSG_ADD_TEXT_TO_EDIT,                        (LPARAM)efn);            SendMessage(g_hWndMain, WM_PRIVATE, MSG_ADD_TEXT_TO_EDIT,                        (LPARAM)" is probably truncated.\n");         }      }      // Display an aborted message in the log      SendMessage(g_hWndMain, WM_PRIVATE, MSG_ADD_TEXT_TO_EDIT,                  (LPARAM)"Operation aborted by user.\n");      // Signal "Immediate Cancel" back to the UnZip engine.      rval = UZ_ST_BREAK;   }   return rval;}//******************************************************************************int WINAPI UzpReplace(LPSTR szFile) {   // Pass control to our GUI thread which will prompt the user to overwrite.   return SendMessage(g_hWndMain, WM_PRIVATE, MSG_PROMPT_TO_REPLACE, (LPARAM)szFile);}//******************************************************************************void WINAPI UzpSound(void) {   // Do nothing.}//******************************************************************************// Called from LIST.Cvoid WINAPI SendAppMsg(ulg dwSize, ulg dwCompressedSize, unsigned ratio,                       unsigned month, unsigned day, unsigned year,                       unsigned hour, unsigned minute, char uppercase,                       LPSTR szPath, LPSTR szMethod, ulg dwCRC, char chCrypt){   // If we are out of memory, then just bail since we will only make things worse.   if (g_fOutOfMemory) {      return;   }   // We get our Globals structure and then retrieve the real file name.   GETGLOBALS();   szPath = pG->filename;   // Allocate a FILE_NODE large enough to hold this file.   int length = strlen(szPath) + strlen(szMethod);   g_pFileLast = (FILE_NODE*)new BYTE[sizeof(FILE_NODE) + (sizeof(TCHAR) * length)];   // Bail out if we failed to allocate the node.   if (!g_pFileLast) {#ifdef UNICODE      DebugOut(TEXT("Failed to create a FILE_NODE for \"%S\"."), szPath);#else      DebugOut(TEXT("Failed to create a FILE_NODE for \"%s\"."), szPath);#endif      g_fOutOfMemory = TRUE;      return;   }   // Fill in our node.   g_pFileLast->dwSize           = dwSize;   g_pFileLast->dwCompressedSize = dwCompressedSize;   g_pFileLast->dwCRC            = dwCRC;   g_pFileLast->szComment        = NULL;   g_pFileLast->szType           = NULL;   // Fix the year value to contain the real year.   year += 1900;   // Year:   0 - 4095 (12) 1111 1111 1111 0000 0000 0000 0000 0000 (0xFFF00000)   // Month:  1 -   12 ( 4) 0000 0000 0000 1111 0000 0000 0000 0000 (0x000F0000)   // Day:    1 -   31 ( 5) 0000 0000 0000 0000 1111 1000 0000 0000 (0x0000F800)   // Hour:   0 -   23 ( 5) 0000 0000 0000 0000 0000 0111 1100 0000 (0x000007C0)   // Minute: 0 -   59 ( 6) 0000 0000 0000 0000 0000 0000 0011 1111 (0x0000003F)   // Do some bit shifting to make the date and time fit in a DWORD.   g_pFileLast->dwModified = (((DWORD)(year   & 0x0FFF) << 20) |                              ((DWORD)(month  & 0x000F) << 16) |                              ((DWORD)(day    & 0x001F) << 11) |                              ((DWORD)(hour   & 0x001F) <<  6) |                              ((DWORD)(minute & 0x003F)));   // We need to get our globals structure to determine our attributes and   // encryption information.   g_pFileLast->dwAttributes = (pG->crec.external_file_attributes & 0xFF);   if (chCrypt == 'E') {      g_pFileLast->dwAttributes |= ZFILE_ATTRIBUTE_ENCRYPTED;   }   // Store the path and method in our string buffer.   strcpy(g_pFileLast->szPathAndMethod, szPath);   strcpy(g_pFileLast->szPathAndMethod + strlen(szPath) + 1, szMethod);   // Pass the file object to our windows code to have it added to our list.   AddFileToListView(g_pFileLast);}//******************************************************************************int win_fprintf(zvoid *pG, FILE *file, unsigned int dwCount, char far *buffer){   // win_fprintf() is used within Info-ZIP to write to a file as well as log   // information.  If the "file" is a real file handle (not stdout or stderr),   // then we write the data to the file and return.   if ((file != stdout) && (file != stderr)) {      DWORD dwBytesWriten = 0;#ifdef _WIN32_WCE      // On WinCE all FILEs are really HANDLEs.  See WINCE.CPP for more info.      WriteFile((HANDLE)file, buffer, dwCount, &dwBytesWriten, NULL);#else      dwBytesWriten = fwrite(buffer, 1, dwCount, file);#endif      // Update our bytes written count.      g_pExtractInfo->dwBytesWrittenThisFile += dwBytesWriten;      // Pass control to our GUI thread to do a partial update our progress dialog.      SendMessage(g_hWndMain, WM_PRIVATE, MSG_UPDATE_PROGRESS_PARTIAL,                  (LPARAM)g_pExtractInfo);      return dwBytesWriten;   }   // Check to see if we are expecting a extraction progress string   if (g_pExtractInfo) {      // Most of our progress strings come to our UzpMessagePrnt2() callback,      // but we occasionally get one here.  We will just forward it to      // UzpMessagePrnt2() as if it never came here.      UzpMessagePrnt2(pG, (uch*)buffer, dwCount, 0);      return dwCount;   }   // Check to see if we are expecting a zip file comment string.   if (g_hWndEdit) {      // Change all forward slashes to back slashes in the buffer      ForwardSlashesToBackSlashesA((LPSTR)buffer);      SendMessage(g_hWndMain, WM_PRIVATE, MSG_ADD_TEXT_TO_EDIT, (LPARAM)buffer);      return dwCount;   }   // Check to see if we are expecting a compressed file comment string.   if (g_pFileLast) {      // Calcalute the size of the buffer we will need to store this comment.      // We are going to convert all ASC values 0 - 31 (except tab, new line,      // and CR) to ^char.      int size = 1;      for (char *p2, *p1 = buffer; *p1; INCSTR(p1)) {         size += ((*p1 >= 32) || (*p1 == '\t') ||                  (*p1 == '\r') || (*p1 == '\n')) ? CLEN(p1) : 2;      }      // Allocate a comment buffer and assign it to the last file node we saw.      if (g_pFileLast->szComment = new CHAR[size]) {         // Copy while formatting.         for (p1 = buffer, p2 = (char*)g_pFileLast->szComment; *p1; INCSTR(p1)) {            if ((*p1 >= 32) || (*p1 == '\t') ||                (*p1 == '\r') || (*p1 == '\n')) {               memcpy(p2, p1, CLEN(p1));               p2 += CLEN(p1);            } else {               *(p2++) = '^';               *(p2++) = 64 + *p1;            }         }         *p2 = '\0';      }      // Update the attributes of the file node to include the comment attribute.      g_pFileLast->dwAttributes |= ZFILE_ATTRIBUTE_COMMENT;      // Clear the file node so we don't try to add another bogus comment to it.      g_pFileLast = NULL;      return dwCount;   }   if (dwCount >= _MAX_PATH) {      buffer[_MAX_PATH] = '\0';   }#ifdef UNICODE   DebugOut(TEXT("Unhandled call to win_fprintf(\"%S\")"), buffer);#else   DebugOut(TEXT("Unhandled call to win_fprintf(\"%S\")"), buffer);#endif   return dwCount;}//******************************************************************************void WINAPI Wiz_NoPrinting(int f) {   // Do nothing.}//******************************************************************************//***** Functions that Info-ZIP expects the port to write and export.//***** Some of this code was stolen from the WIN32 port and highly modified.//******************************************************************************int mapattr(Uz_Globs *pG) {   // Check to see if we are extracting this file for viewing.  Currently, we do   // this by checking the szMappedPath member of our extract info stucture   // since we know OnActionView() is the only one who sets this member.   if (g_pExtractInfo && g_pExtractInfo->szMappedPath) {      // If we are extracting for view only, then we ignore the file's real      // attributes and force the file to create as read-only.  We make the file      // read-only to help prevent the user from making changes to the temporary      // file and then trying to save the changes back to a file that we will      // eventually delete.      pG->pInfo->file_attr = FILE_ATTRIBUTE_READONLY;   } else {      // Store the attribute exactly as it appears for normal extraction/test.      pG->pInfo->file_attr = (unsigned)pG->crec.external_file_attributes & 0xff;   }   return PK_OK;}//******************************************************************************void utimeToFileTime(time_t ut, FILETIME *pft, BOOL fOldFileSystem) {   // time_t    is a 32-bit value for the seconds since January 1, 1970   // FILETIME  is a 64-bit value for the number of 100-nanosecond intervals since   //           January 1, 1601   // DWORDLONG is a 64-bit int that we can use to perform large math operations.   // time_t has minimum of 1/1/1970.  Many file systems, such as FAT, have a   // minimum date of 1/1/1980.  If extracting to one of those file systems and   // out time_t is less than 1980, then we make it 1/1/1980.   // (365 days/yr * 10 yrs + 3 leap yr days) * (60 secs * 60 mins * 24 hrs).   if (fOldFileSystem && (ut < 0x12CFF780)) {      ut = 0x12CFF780;   }   // Compute the FILETIME for the given time_t.   DWORDLONG dwl = ((DWORDLONG)116444736000000000 +                   ((DWORDLONG)ut * (DWORDLONG)10000000));   // Store the return value.   *pft = *(FILETIME*)&dwl;   // Now for the next fix for old file systems.  If we are in Daylight Savings   // Time (DST) and the file is not in DST, then we need subtract off the DST   // bias from the filetime.  This is due to a bug in Windows (NT, CE, and 95)   // that causes the DST bias to be added to all file times when the system   // is in DST, even if the file is not in DST.  This only effects old file   // systems since they store local times instead of UTC times.  Newer file   // systems like NTFS and CEFS store UTC times.   if (fOldFileSystem) {      // We use the CRT's localtime() and Win32's FileTimeToLocalTime()      // functions to compute the DST bias.  This works because localtime()      // correctly adds the DST bias only if the file time is in DST.      // FileTimeToLocalTime() always adds the DST bias to the time.      // Therefore, if the functions return different results, we know we      // are dealing with a non-DST file during a system DST.      FILETIME ftCRT, ftWin32;      // Get the CRT result - result is a "tm" struct.      struct tm *ptmCRT = localtime(&ut);      // Convert the "tm" struct to a FILETIME.      SYSTEMTIME stCRT;      ZeroMemory(&stCRT, sizeof(stCRT));      stCRT.wYear   = ptmCRT->tm_year + 1900;      stCRT.wMonth  = ptmCRT->tm_mon + 1;      stCRT.wDay    = ptmCRT->tm_mday;      stCRT.wHour   = ptmCRT->tm_hour;      stCRT.wMinute = ptmCRT->tm_min;      stCRT.wSecond = ptmCRT->tm_sec;      SystemTimeToFileTime(&stCRT, &ftCRT);      // Get the Win32 result - result is a FILETIME.      if (FileTimeToLocalFileTime(pft, &ftWin32)) {         // Subtract the difference from our current filetime.         *(DWORDLONG*)pft -= *(DWORDLONG*)&ftWin32 - *(DWORDLONG*)&ftCRT;      }   }}//******************************************************************************int GetFileTimes(Uz_Globs *pG, FILETIME *pftCreated, FILETIME *pftAccessed,                 FILETIME *pftModified){   // We need to check to see if this file system is limited.  This includes   // FAT, VFAT, and HPFS.  It does not include NTFS and CEFS.  The limited   // file systems can not support dates < 1980 and they store file local times   // for files as opposed to UTC times.   BOOL fOldFileSystem = IsOldFileSystem(pG->filename);#ifdef USE_EF_UT_TIME  // Always true for WinCE build#ifdef IZ_CHECK_TZ   if (pG->extra_field && pG->tz_is_valid) {#else   if (pG->extra_field) {#endif      // Structure for Unix style actime, modtime, creatime      iztimes z_utime;      // Get any date/time we can.  This can return 0 to 3 unix time fields.      unsigned eb_izux_flg = ef_scan_for_izux(pG->extra_field,                                              pG->lrec.extra_field_length, 0,                                              pG->lrec.last_mod_dos_datetime,                                              &z_utime, NULL);      // We require at least a modified time.      if (eb_izux_flg & EB_UT_FL_MTIME) {         // We know we have a modified time, so get it first.         utimeToFileTime(z_utime.mtime, pftModified, fOldFileSystem);         // Get the accessed time if we have one.         if (eb_izux_flg & EB_UT_FL_ATIME) {            utimeToFileTime(z_utime.atime, pftAccessed, fOldFileSystem);         }         // Get the created time if we have one.         if (eb_izux_flg & EB_UT_FL_CTIME) {            utimeToFileTime(z_utime.ctime, pftCreated, fOldFileSystem);         }         // Return our flags.         return (int)eb_izux_flg;      }   }#endif // USE_EF_UT_TIME   // If all else fails, we can resort to using the DOS date and time data.   time_t ux_modtime = dos_to_unix_time(G.lrec.last_mod_dos_datetime);   utimeToFileTime(ux_modtime, pftModified, fOldFileSystem);   *pftAccessed = *pftModified;   return (EB_UT_FL_MTIME | EB_UT_FL_ATIME);}//******************************************************************************int SetFileSize(FILE *file, ulg filesize){#if (defined(_WIN32_WCE) || defined(__RSXNT__))    // For native Windows CE, it is not known whether the API supports    // presetting a file's size.    // RSXNT environment lacks a translation function from C file pointer    // to Win32-API file handle.    // So, simply do nothing.    return 0;#else /* !(_WIN32_WCE || __RSXNT__) */    /* not yet verified, if that really creates an unfragmented file      rommel@ars.de     */    HANDLE os_fh;    /* Win9x supports FAT file system, only; presetting file size does       not help to prevent fragmentation. */    if ((long)GetVersion() < 0) return 0;    /* Win32-API calls require access to the Win32 file handle.       The interface function used to retrieve the Win32 handle for       a file opened by the C rtl is non-standard and may not be       available for every Win32 compiler environment.       (see also win32/win32.c of the Zip distribution)     */    os_fh = (HANDLE)_get_osfhandle(fileno(file));    /* move file pointer behind the last byte of the expected file size */    if (SetFilePointer(os_fh, filesize, 0, FILE_BEGIN) == 0xFFFFFFFF)        return -1;    /* extend/truncate file to the current position */    if (SetEndOfFile(os_fh) == 0)        return -1;    /* move file position pointer back to the start of the file! */    return (SetFilePointer(os_fh, 0, 0, FILE_BEGIN) == 0xFFFFFFFF) ? -1 : 0;#endif /* ?(_WIN32_WCE || __RSXNT__) */} /* end function SetFileSize() *///******************************************************************************void close_outfile(Uz_Globs *pG) {   // Get the 3 time stamps for the file.   FILETIME ftCreated, ftAccessed, ftModified;   int timeFlags = GetFileTimes(pG, &ftCreated, &ftAccessed, &ftModified);   TCHAR szFile[_MAX_PATH];   MBSTOTSTR(szFile, pG->filename, countof(szFile));#ifdef _WIN32_WCE   // Cast the outfile to a HANDLE (since that is really what it is), and

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品一区二区三区精华液| 亚洲桃色在线一区| 欧美日韩一区中文字幕| 色综合色狠狠综合色| 色婷婷综合久久| 欧美网站一区二区| 日韩欧美亚洲国产精品字幕久久久| 亚洲欧美日韩在线| 国产日韩影视精品| 一区二区三区鲁丝不卡| 久久se这里有精品| 92精品国产成人观看免费| 欧美另类z0zxhd电影| 久久久亚洲高清| 午夜精彩视频在线观看不卡| 国产91丝袜在线18| 9久草视频在线视频精品| 黄页视频在线91| 91国内精品野花午夜精品 | 97国产一区二区| 精品国产乱码久久久久久牛牛| 欧美国产精品中文字幕| 久久精品二区亚洲w码| 91片黄在线观看| 中文字幕欧美日韩一区| 国产一区二区三区免费观看| 久久99最新地址| 国产一区二区三区精品欧美日韩一区二区三区 | www.日韩在线| 91丝袜美女网| 欧美精品一区二区三区一线天视频| 亚洲男人天堂一区| 成人性视频免费网站| 中文字幕在线不卡一区| 国产99久久久国产精品潘金| 欧美一区二区福利视频| 久久精品国产精品亚洲红杏| 老司机午夜精品99久久| 成人免费毛片片v| 久久精品一区四区| 国产精品996| 国产精品高潮久久久久无| www.av精品| 日韩精品免费专区| 91精品国产综合久久久久久久 | 久久夜色精品国产欧美乱极品| 国产午夜亚洲精品羞羞网站| 成人性视频网站| 最新欧美精品一区二区三区| 麻豆91在线播放免费| 日韩免费视频一区| 99久久精品免费观看| 黑人精品欧美一区二区蜜桃| 五月天久久比比资源色| 伊人一区二区三区| 国产精品亲子乱子伦xxxx裸| www国产亚洲精品久久麻豆| 欧美日韩精品欧美日韩精品| 国产一区二区美女| 中文字幕日韩欧美一区二区三区| 日韩欧美精品在线视频| 日韩一区二区电影在线| 欧美日本精品一区二区三区| 欧美日韩精品一区二区三区蜜桃| 91黄色免费网站| 欧美日韩国产综合一区二区 | 亚洲视频免费观看| 欧美电影免费观看高清完整版在线观看 | 国产大片一区二区| 精品一区二区在线视频| 成人激情免费视频| 亚洲乱码国产乱码精品精小说| 久久亚洲精精品中文字幕早川悠里| 欧美精品乱人伦久久久久久| 91丝袜国产在线播放| eeuss鲁片一区二区三区在线看| 精品一区二区三区在线观看| 性做久久久久久免费观看欧美| 亚洲国产精品高清| 亚洲国产精品黑人久久久| 久久久久久久一区| 夜夜精品浪潮av一区二区三区| 国产在线精品不卡| 欧美在线影院一区二区| 欧美国产日本视频| 久久伊99综合婷婷久久伊| 精品视频在线免费看| 欧洲亚洲国产日韩| 在线一区二区三区| 一本大道综合伊人精品热热| 成a人片亚洲日本久久| 岛国av在线一区| 国产一区二区三区电影在线观看 | av一二三不卡影片| 99国产精品久久久| 色综合 综合色| 欧美日韩日本视频| 久久这里只精品最新地址| 国产午夜亚洲精品午夜鲁丝片| 椎名由奈av一区二区三区| 国产精品私人影院| 亚洲va欧美va人人爽| 韩国三级在线一区| 91九色最新地址| 26uuu亚洲综合色| 亚洲成人7777| 国产iv一区二区三区| 91精品国产综合久久久蜜臀粉嫩| 久久久精品黄色| 日韩精品1区2区3区| 91丨九色丨国产丨porny| 精品久久久久av影院| 亚洲午夜一二三区视频| 91麻豆精东视频| 国产校园另类小说区| 国产精品正在播放| 日韩欧美国产综合在线一区二区三区| 一区二区三区影院| 91麻豆国产在线观看| 中文字幕乱码亚洲精品一区| 国产一区二区剧情av在线| 欧美一级欧美三级在线观看| 亚洲国产精品一区二区www | 国产精品午夜在线观看| 久久新电视剧免费观看| 国产91精品露脸国语对白| 日韩一区在线播放| 欧美一区二区在线看| 国产成人精品亚洲午夜麻豆| 亚洲精品欧美专区| 日韩欧美一区在线| 97se亚洲国产综合自在线| 日韩高清在线不卡| 中文字幕视频一区| 91福利小视频| 国产精品久久免费看| 91女人视频在线观看| 亚洲最大色网站| 91精品国产福利| 国产99久久久久| 午夜视频一区二区三区| 日韩女优电影在线观看| 成人亚洲一区二区一| 亚洲一区欧美一区| 欧美极品xxx| 欧美日韩亚洲另类| 国产成人综合网| 日本亚洲免费观看| 亚洲免费观看高清| www一区二区| 日韩亚洲欧美高清| 在线亚洲一区二区| 国产不卡视频在线观看| 亚洲成av人片在www色猫咪| 精品国产乱码久久久久久久| 99国产精品久久久久久久久久久| 精品一区二区三区免费毛片爱| 一区免费观看视频| 国产精品久久久久婷婷 | 亚洲欧洲av在线| 中文字幕乱码亚洲精品一区| 26uuu精品一区二区在线观看| 欧美日韩免费视频| 欧美日韩久久久| 欧美人与禽zozo性伦| 在线观看日韩国产| 亚洲视频狠狠干| 国产偷国产偷精品高清尤物| 亚洲欧美在线视频观看| 亚洲一级电影视频| 国产精品一区二区不卡| 色综合天天做天天爱| 欧美丰满一区二区免费视频| 精品国产乱码久久久久久老虎 | 亚洲与欧洲av电影| 九九**精品视频免费播放| 国产91丝袜在线18| 日韩精品一区二区三区在线观看 | 日韩va亚洲va欧美va久久| 黄网站免费久久| 91搞黄在线观看| 久久精品在这里| 精品系列免费在线观看| 欧美亚洲动漫精品| 国产精品少妇自拍| 美女久久久精品| 欧美丰满嫩嫩电影| 亚洲男人的天堂在线aⅴ视频| 美女网站在线免费欧美精品| 欧美亚洲综合色| 亚洲蜜臀av乱码久久精品蜜桃| 国产成人av影院| 久久久五月婷婷| 国产一区二区视频在线| 日韩你懂的在线观看| 午夜伊人狠狠久久| 国产99久久精品| 国产精品看片你懂得| 成人免费av资源| 国产女人18毛片水真多成人如厕 |