惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
Martin Fowler
Martin Fowler
博客园_首页
量子位
T
Tailwind CSS Blog
博客园 - Franky
G
Google Developers Blog
D
DataBreaches.Net
Vercel News
Vercel News
B
Blog
Recent Announcements
Recent Announcements
S
SegmentFault 最新的问题
M
MIT News - Artificial intelligence
爱范儿
爱范儿
博客园 - 【当耐特】
The Cloudflare Blog
H
Help Net Security
云风的 BLOG
云风的 BLOG
P
Proofpoint News Feed
C
Check Point Blog
有赞技术团队
有赞技术团队
Microsoft Security Blog
Microsoft Security Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - cxun

使用 Sublime Text 将含下划线的字符串批量替换为驼峰命名法格式的字符串 如何使用iTunes与iTools导出微信聊天记录 git 常用命令粗略总结 如何从第三方应用下载广播电台的缓存节目内容 在 Windows 10 中启用 Windows Photo Viewer iOS版微信朋友圈数据库的简要分析 如何将密切好友的微信聊天记录恢复到自己的微信中 Hash工具下载地址 微信聊天记录查看器(程序+源码) - iOS版 XEN的启动信息输出到“Platform timer is 14.318MHz HPET”就暂停接收的解决办法 利用 Serial Over Lan(SOL)搭建 XEN 的调试信息输出环境 Windows内核开发中如何区分文件对象究竟是文件还是文件夹? 白盒密码入门 [转] win32内核程序中进程的pid,handle,eprocess之间相互转换的方法 Windows Language Packs Downloading Links 使用VirtualBox SDK之初步编译 VirtualBox开发环境的搭建详解 Chrome的Awesome Screenshot的插件离线下载 Chrome插件安装文件提取方法及 PwdHash Port 的插件下载
最简单的7z API接口
cxun · 2013-01-29 · via 博客园 - cxun

7z官网提供的SDK下载地址:http://www.7-zip.org/sdk.html

我觉得还是有点复杂,就把里面的例子LzmaUtil改了改,并把不需要的其它源文件删掉了,现在,使用此源码生成的dll、lib,就可以通过以下的两个接口对文件进行压缩、解压缩了:

MY_STDAPI LzmaCompress(char* pSrcFile, char* pDstFile);

MY_STDAPI LzmaUncompress(char* pSrcFile, char* pDstFile);

调用的时候很简单,附上示例代码:

#include "7z\LzmaUtil.h"
#pragma comment(lib, "7z\\LzmaUtil.lib")

void main()
{
    LzmaCompress("data.db", "data.7z");
    LzmaUncompress("data.7z", "data_new.db");
}

 生成dll、lib的代码、以及我写的一个Demo参考代码的下载地址:7zDll.7z

在编译Demo之前,需要先打开“Lzma\Lzma\LzmaUtil.sln”并进行编译,然后把生成的“LzmaUtil.dll”复制到Demo工程同一目录下,才能正常编译Demo和运行。