MFC 自定义压缩,解压缩工具

界面效果如下:

对外提供的接口如下:

public:

void setCallback(zp::Callback callback, void* param);

bool open(const zp::String& path, bool readonly = false);

bool create(const zp::String& path, const zp::String& inputPath);

void close();

bool isOpen() const;

bool defrag();

zp::IPackage* getPack() const;

const zp::Char* packageFilename() const;

bool enterDir(const zp::String& path);

//srcPath can't be empty

//if dstPath is empty, file/dir will be add to current path of package

bool add(const zp::String& srcPath, const zp::String& dstPath, bool flush = true);

bool remove(const zp::String& path);

void flush();

//if srcPath is empty, current path of package will be extracted

//if dstPath is empty, file/dir will be extracted to current path of system

bool extract(const zp::String& srcPath, const zp::String& dstPath);

void setCurrentNode(const ZpNode* node);

const ZpNode* currentNode() const;

const ZpNode* rootNode() const;

const zp::String& currentPath() const;

void getNodePath(const ZpNode* node, zp::String& path) const;

zp::u64 countDiskFileSize(const zp::String& path);

zp::u64 countNodeFileSize(const ZpNode* node);

相关推荐
fqbqrr1 小时前
2601C++,编写自己模块
c++
王老师青少年编程4 小时前
2025年12月GESP真题及题解(C++七级): 城市规划
c++·gesp·csp·信奥赛·七级·csp-s·提高组
寻星探路5 小时前
【算法专题】滑动窗口:从“无重复字符”到“字母异位词”的深度剖析
java·开发语言·c++·人工智能·python·算法·ai
我叫袁小陌6 小时前
C++多线程全面详解
开发语言·c++
m0_748250036 小时前
C++ 官方文档与标准
开发语言·c++
matlabgoodboy7 小时前
程序代做python代编程matlab定制代码编写C++代写plc设计java帮做
c++·python·matlab
DYS_房东的猫7 小时前
《 C++ 零基础入门教程》第6章:模板与 STL 算法 —— 写一次,用万次
开发语言·c++·算法
点云SLAM7 小时前
C++ 静态初始化顺序问题(SIOF)和SLAM / ROS 工程实战问题
开发语言·c++·slam·静态初始化顺序问题·工程实战技术·c++static 关键字
pen-ai8 小时前
打通 Python 与 C++ 的参数传递机制
开发语言·c++·python
王老师青少年编程8 小时前
信奥赛C++提高组csp-s之KMP算法详解
c++·kmp·字符串匹配·csp·信奥赛·csp-s·提高组