📄 vmzipper.h
字号:
#ifndef VM_ZIPPER_H_INCLUDED
#define VM_ZIPPER_H_INCLUDED
#if _MSC_VER > 1000
#pragma once
#endif
struct VMZipFileInfo// Z_FileInfo
{
int nFileCount;
int nFolderCount;
DWORD dwUncompressedSize;
};
class VMZipper
{
public:
VMZipper(LPCTSTR szFilePath = NULL, LPCTSTR szRootFolder = NULL, bool bAppend = FALSE);
virtual ~VMZipper();
// simple interface
static bool ZipFile(LPCTSTR szFilePath); // saves as same name with .zip
static bool ZipFolder(LPCTSTR szFilePath, bool bIgnoreFilePath); // saves as same name with .zip
// works with prior opened zip
bool AddFileToZip(LPCTSTR szFilePath, bool bIgnoreFilePath = FALSE);
bool AddFileToZip(LPCTSTR szFilePath, LPCTSTR szRelFolderPath); // replaces path info from szFilePath with szFolder
bool AddFolderToZip(LPCTSTR szFolderPath, bool bIgnoreFilePath = FALSE);
// extended interface
bool OpenZip(LPCTSTR szFilePath, LPCTSTR szRootFolder = NULL, bool bAppend = FALSE);
bool CloseZip(); // for multiple reuse
void GetFileInfo(VMZipFileInfo& info);
protected:
void* m_uzFile;
char m_szRootFolder[MAX_PATH + 1];
VMZipFileInfo m_info;
protected:
void PrepareSourcePath(LPTSTR szPath);
bool GetLastModified(const char* szPath, SYSTEMTIME& sysTime);
void UnterminatePath(LPTSTR szPath);
void PrepareZipPath(LPTSTR szPath);
};
#endif // !defined(AFX_ZIPPER_H__4249275D_B50B_4AAE_8715_B706D1CA0F2F__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -