• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            牽著老婆滿街逛

            嚴以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            QQ游戲的PKG格式文件解壓工具

            本文純屬學習之用,如拿此代碼用于商業,與本人無關.


            代碼是自己寫的,寫得爛,有很多改進的地方.


            起始字節-結束字節
            1-4 64 00 00 00 文件頭
            5-8 4字節,文件個數 (把一個pkg文件后面的文件列表數了下,確實是文件個數)
            9-12 4字節,文件列表區的偏移地址(通過比較兩個pkg文件,確實是偏移地址)
            13-16

            4字節,文件列表區的大小,其實就是從上一面的偏移地址到文件末尾



            分析文件列表區數據,文件名長度是不等長的,這樣讀取文件列表時,就從頭讀過去,根據標志位來確定。
            下面是每條文件記錄的各項屬性:
             1 - 2  接下來的字符串的長度,也就是文件名路徑的字符串長度
            3 - X 帶相對路徑的文件名稱(說明:X是文件名稱結束的偏移位置)
            X - X+4 00 00 00 00  識別標志
            X+5 - X+8 文件起始偏移
            X+9 - X+12 原始文件大小
            X+13 - X+16 文件大小


            說明:
            直接從PKG里面解出來的圖片文件(主要是MIF格式的)是經過zlib壓縮過的,必須要解壓后才能使用。
            解壓我們只要用到了zlib的uncompress函數就行了。


            工具源代碼下載 : PkgManager.rar

            參考資料:http://www.vbgood.com/viewthread.php?tid=87382&extra=page%3D1

            posted on 2010-02-24 20:35 楊粼波 閱讀(3569) 評論(1)  編輯 收藏 引用

            評論

            # re: QQ游戲的PKG格式文件解壓工具 2010-02-27 00:13 C/C++源碼論壇 (中國大學生軟件開發論壇)

            華為C++面試題2010年鄭州大學(2010-2-24全套面試題)

            轉載于 C/C++源碼論壇 (中國大學生軟件開發論壇) 我們專注C/C++

            http://www.cssdn.net/thread-8591-1-1.html

            華為C++面試題2010年鄭州大學(2010-2-24全套面試題)
            筆試地點 中原地區 鄭州大學
            1. 編寫strcat函數(5分)
            已知strcat函數的原型是char *strcat (char *strDest, const char *strSrc);
            其中strDest 是目的字符串,strSrc 是源字符串。
            (1)不調用C++/C 的字符串庫函數,請編寫函數 strcat
            (2)strcat能把strSrc 的內容連接到strDest,為什么還要char * 類型的返回值?
            2.使用線程是如何防止出現大的波峰(5)
            3.隊列和棧有什么區別?(9)
            (請至少說出三點)
            4、請找出下面代碼中的所以錯誤(5)
            說明:以下代碼是把一個字符串倒序,如“abcd”倒序后變為“dcba”

            1、#include"string.h"
            2、main()
            3、{
            4、 char*src="hello,world";
            5、 char* dest=NULL;
            6、 int len=strlen(src);
            7、 dest=(char*)malloc(len);
            8、 char* d=dest;
            9、 char* s=src[len];
            10、 while(len--!=0)
            11、 d++=s--;
            12、 printf("%s",dest);
            13、 return 0;
            14、}
            5.C++中為什么用模板類。(5)
            (請至少說出三點)
            ...
            ...
            ...

            嚴禁用于商業用途轉載 轉載請注明出去

            C/C++源碼論壇 (中國大學生軟件開發論壇) 我們專注C/C++
            http://www.cssdn.net
              回復  更多評論   

            狠狠色丁香久久婷婷综| 日韩美女18网站久久精品| 99国内精品久久久久久久| 精品久久久噜噜噜久久久| 青草国产精品久久久久久| 久久亚洲AV无码精品色午夜麻豆 | 理论片午午伦夜理片久久| 精品久久久久久久无码| 开心久久婷婷综合中文字幕| 99久久久国产精品免费无卡顿| 久久综合亚洲鲁鲁五月天| 久久国产色AV免费观看| 国产精品无码久久四虎| 久久国产精品二国产精品| 亚洲国产成人久久精品99 | 久久久久av无码免费网| 久久香蕉一级毛片| 久久婷婷五月综合国产尤物app| 久久夜色精品国产www| 丁香五月综合久久激情| 久久99国产乱子伦精品免费| 国产精品99久久99久久久| 国产ww久久久久久久久久| 亚洲狠狠婷婷综合久久蜜芽| 国产99久久久国产精品~~牛| 久久精品夜夜夜夜夜久久| 久久久久久精品无码人妻| 久久久亚洲AV波多野结衣| 亚洲国产综合久久天堂 | 91精品婷婷国产综合久久| 久久精品国产一区二区三区不卡| 久久精品国产亚洲AV久| 亚洲精品美女久久久久99| 一本一本久久A久久综合精品| 好属妞这里只有精品久久| 久久午夜夜伦鲁鲁片免费无码影视| 欧美牲交A欧牲交aⅴ久久| 亚洲一区精品伊人久久伊人 | 国产福利电影一区二区三区,免费久久久久久久精 | 国产一级持黄大片99久久| 色婷婷综合久久久久中文字幕|