ZIP文件格式SDK - TinyZip

    From: xuyibo.net  Updated: 2009-12-23

    tinyzip sdk 1.2.0Size:163 KB   Date:2012-01-31   Downloads:246
    邮件通知当更新时自动发送邮件通知。
    评论本文有什么建议或评论,可以贴一下。
    我要捐助你的支持,让我们做的更好。

    TinyZip是非常小巧的zip文件开发库,代码中使用完全基于内存的zip管理代码(MemoryZip),代码经过了千万级用户的测试,绝对稳定可靠。

  1. 使用方法
  2. HANDLE Handle = ZipCreate(NULL);
    if (Handle != INVALID_HANDLE_VALUE) {
        ZipAddFile(Handle, "c:\\boot.ini", "boot.ini");
        ZipSave(Handle, "tst.zip");
        ZipClose(Handle);
    } 
    
  3. 函数列表
  4. HANDLE ZipCreate(LPCTSTR FileName)
    BOOL ZipAddFile(HANDLE Handle, LPCTSTR FileName, LPCTSTR EntryName)
    BOOL ZipReadFile(HANDLE Handle, LPCTSTR EntryName, LPCTSTR FileName)
    BOOL ZipAddDir(HANDLE Handle, LPCTSTR EntryName)
    BOOL ZipDelFile(HANDLE Handle, LPCTSTR EntryName)
    BOOL ZipSave(HANDLE Handle, LPCTSTR FileName)
    BOOL ZipClose(HANDLE Handle)

  5. SDK文件说明
  6. tinyzip.h     头文件,编译时需要include这个文件
    tinyzip.lib   导入库,链接时需要这个文件
    tinyzip.dll   动态库,程序发布时需要这个文件
    zipdemo.exe   测试程序
    
  7. 获取MemoryZip代码
  8. CMemoryZip.cpp是2009年编写的完全在内存中读取zip文件的代码,代码简洁、便于使用,便于维护添加新的功能,代码已经用于千万级用户的测试,可靠高效。不依赖任何其他第三方库。有需要授权的公司或个人请联系我(QQ:85521028),价格:4000元。

    class CMemoryZip
    {
    public:
    	CMemoryZip(char* Password = NULL);
    	~CMemoryZip();
    
    	// Add new entry
    	#define ZIP_ADDNEW			0x00000001
    	#define ZIP_REPLACE			0x00000002
    	int AddEntry(char* Name, void* Buffer = NULL, DWORD Size = 0, DWORD Flags = ZIP_ADDNEW, FILETIME* FileTime = NULL);
    	int AddEntry(int Index, void* Buffer = NULL, DWORD Size = 0);
    
    	// Delete exist entry
    	bool DeleteEntry(char* Name);
    	bool DeleteEntry(int Index);
    
    	// Get entry info
    	CZipEntry* GetEntry(char* Name, int* Index = NULL);
    	CZipEntry* GetEntry(int Index);
    
    	// Read entry data
    	bool ReadEntryData(CZipEntry* Entry, PUCHAR Data, DWORD Size);
    
    	// Enumerate entry
    	void EnumEntry(ENUM_ZIPENTRY EnumFunc, WPARAM wParam, LPARAM lParam);
    
    	// Open/Save to disk
    	bool Open(const char* FileName);
    	bool OpenBuffer(const char* Buffer, DWORD dwSize);
    	bool Save(char* FileName = NULL);
    
    	// Rebuild: decompress and then compress again
    	void Rebuild();
    ....
    

  9. 相关文章
  10. 部署你的自动构建
    .xps to .jpg
    TrueCrypt Mount/Unmount Command Line
    C语言数据导入工具 - FileImport
    IE插件查杀工具 - malware.exe
    VC++ Minimum Rebuild Dependency File
    WDK中配置binplace
    命令行弹出文件/文件夹属性工具 - prop.exe
    MD5计算工具 - MD5.exe
    哈希值计算工具 - Hash.exe
    命令行新建文件 - new.exe
    命令行打开保存文件、浏览文件夹工具 - dialog.exe
    PE校验和重置工具
    绿色静态链接的notepad2
    libnet.dll
    绿色静态链接的cvs.exe
    MSDN精简版、MSDN绿色版、MSDN VC精简版
    .txt转.chm帮助文件的工具
    国产文件编辑器 - FlexEdit
    C语言代码文档提取工具

  11. 评论本文:
  12. EMail: