对指定目录下面的文件进行打包。
简易解包程序参考博客另外一篇文章:
http://blog.csdn.net/yi_ming_he/article/details/77689453
打包方式:
把目录下面的文件名,文件大小,偏移位置,文件内容,以索引形式保存在打包文件中
使用方法:
1.packetfiles.exe为打包程序
2.运行时使用管理员权限
3.可以直接运行packetfiles.exe进行打包,只需要把需要打包的文件放在与packetfiles.exe同一级的input目录即可(如果没有该目录需要手动创建在把文件扔进去),生成的打包文件默认是files.pak,位于和packetfiles.exe文件同一级目录
4.另外一种打包方式是通过指定命令行参数设置打包的目录和打包后的文件路径,如下图所示:
PacketFiles.h:
#pragma once
struct MyFileData
{
int nOffset;//文件相对于压缩包文件的偏移
int nFileSize;//文件的Size
int nFileNameLength;//文件名包含的字符个数
CString strFileName;//文件名
CString strFilePath;//文件路径,用于把文件打包进来
MyFileData()
{
nOffset = 0;
nFileSize = 0;
nFileNameLength = 0;
}
};
class CPacketFiles
{
public:
CPacketFiles();
~CPacketFiles();
void PacketFiles(LPCTSTR lpDir, LPCTSTR lpOutFilePath);//传入需要打包的文件夹目录
private:
void _PathAddBackSlach(CString& strPath);
void _GetFileInfo(LPCTSTR lpDir);
void _GetPacketInfo();
vo