⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 codecdll.h

📁 所有压缩格式的压缩解压缩。
💻 H
字号:
/*----------------------------------------------------------------*\
CompressX 的压缩解压缩库		版本 0.x (alpha版)

  外部接口: 三个引出函数 GetDllInfo, GetFunctionInfo, CDLAboutBox.

\*================================================================*/

#include <windows.h>

#ifndef __CO_DEC_DLL_H
#define __CO_DEC_DLL_H

#define CDL_CUR_VERSION_NUMBER 0		//当前压缩|解压缩库接口主版本号:0.x

//文件打开模式
#define CDL_FILE_OPEN			0
#define CDL_FILE_OPENREADONLY	1
#define CDL_FILE_CREATE			2
#define	CDL_FILE_CREATESPAN		3

//压缩层次
#define CX_DEFAULT_COMPRESSION	-1
#define CX_NO_COMPRESSION		0
#define CX_BEST_SPEED			1
#define CX_BEST_COMPRESSION		9

typedef struct 
{
	char	szLibName[32];
	char	szFileType[16];
	char	szFileFilter[32];
	DWORD	dwVersion;
	char	szAuthor[16];
	char	szEmail[32];
}CODECLIBINFO,*LPCODECLIBINFO;

typedef void (*LPFNGETDLLINFO)(LPCODECLIBINFO);

typedef struct
{
	char	szFileName[MAX_PATH];
	DWORD	dwFileSize;
	DWORD	dwPackedSize;
	DWORD	dwDateTime;
	WORD	bIsDirectory;
	WORD	bEncrypted;		//文件是否被加密
	DWORD	dwFileAttr;
	DWORD	dwCRC32;
}FILEINFO,*LPFILEINFO;

typedef LPVOID HCXFILE;		//被操作文件的指针

typedef HCXFILE (*LPFNCREATE)(LPCTSTR szPathName,int iMode);
typedef void (*LPFNRELEASE)(HCXFILE);
typedef int (*LPFNGETNOENTRIES)(HCXFILE);
typedef BOOL (*LPFNGETFILEINFO)(HCXFILE,LPFILEINFO,int nIndex);
typedef BOOL (*LPFNADDNEWFILE)(HCXFILE,LPCTSTR lpszFileName,LPCTSTR lpszPos,int iLevel);
typedef BOOL (*LPFNEXTRACTFILE)(HCXFILE,int nIndex,LPCTSTR lpszPath);
typedef BOOL (*LPFNDELETEFILES)(HCXFILE,int *indexes);
typedef BOOL (*LPFNTESTFILE)(HCXFILE,int nIndex);
typedef BOOL (*LPFNSETFILENAME)(HCXFILE,int nIndex,LPCTSTR lpszFileName);
typedef BOOL (*LPFNSETPASSWORD)(HCXFILE,int nIndex);
typedef BOOL (*LPFNGETCOMMENT)(HCXFILE,int nIndex,char *buf,int buf_size);
typedef BOOL (*LPFNSETCOMMENT)(HCXFILE,int nIndex,LPCTSTR lpszComment);

typedef struct
{
	LPFNCREATE			lpfnCreate;
	LPFNRELEASE			lpfnRelease;
	LPFNGETNOENTRIES	lpfnGetNoEntries;
	LPFNGETFILEINFO		lpfnGetFileInfo;
	LPFNADDNEWFILE		lpfnAddNewFile;
	LPFNEXTRACTFILE		lpfnExtractFile;
	LPFNDELETEFILES		lpfnDeleteFiles;
	LPFNTESTFILE		lpfnTestFile;
	LPFNSETFILENAME		lpfnSetFileName;
	LPFNSETPASSWORD		lpfnSetPassword;
	LPFNGETCOMMENT		lpfnGetComment;
	LPFNSETCOMMENT		lpfnSetComment;
}FUNCTIONINFO,*LPFUNCTIONINFO;

typedef void (*LPFNGETFUNCTIONINFO)(LPFUNCTIONINFO);

typedef void (*LPFNCDLABOUTBOX)();

#endif //CoDecDll.h

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -