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

📄 readme.txt

📁 MDEngine2plus游戏开发库! 用来开发游戏超级简单!
💻 TXT
字号:
简介
MDFile是一款使用方便、易于扩展的文件系统库,其扩展性体现在两个方面:
1.MDFile内部的epk(extendable package)文件格式的压缩编码方案通过edl(encoding/decoding library)插件可以扩展
2.MDFile支持的压缩包文件可扩展。默认的,MDFile只能打开后缀为.epk的文件格式,通过dll插件的扩展,可以支持zip,rar,lzh.....格式,只要有相应的插件库就可以了

特点:
1.使用简单
2.可扩展,通过edl或者epk方式扩展
3.支持外部检索(loss file)特性
4.epk格式安全性高,使用高效加密方案加密,保护数据的安全性
5.epk格式支持目录存储结构
6.epk格式支持单包多编码存储方式,能更有效压缩数据

支持平台:
VC++6,Microsoft Windows system

函数接口:


	CMD_File();
	初始化一个CMD_File的实例。

	CMD_File(char *ProviderName);
	初始化一个CMD_File的实例,同时挂接一个FileProvider。

	void	EnableShowErrorMSG(bool bshowerr); // 允许or禁止弹出错误信息
	参数:当出现错误时是否需要弹出一个错误警告窗口。
		bshowerr=true  -  弹出错误警告窗口
		bshowerr=false -  不要弹出
	返回值:无
	说明:当你进行一个CMD_File的操作的时候(比如:执行一个ConnectFileProvider("zipext.dll")),可能产生一个错误,例如zipext.dll不存在,这时MDFile会记录一个错误信息,如果此时EnableShowErrorMSG设置成true,系统就会弹出一个警告窗口,告诉你出错了。如果此时EnableShowErrorMSG是false,系统不会弹出一个警告窗口,但是你可以使用GetErrorCode来检索这个错误代码。

	void	EnableExtraFileFolder(bool bEnable); // 打开or禁用扩展搜索
	参数:是否允许外部检索
	返回值:无
	说明:当你读取一个文件的时候,如果指定了外部检索为true,那么系统首先会在对应的文件夹中搜索是否存在这个文件,如果不存在才去读取文件包中的文件。如:
		CMD_File file;
		EnableExtFileFolder(true);
		file.Open("test.epk");
		file.LocateFile("hi.txt");
		file.Read();	// 此时如果存在在test.epk文件一起的一个test文件夹,同时test文件夹下有hi.txt则系统会读取test文件夹下的hi.txt文件。如果不存在hi.txt文件系统才会读取test.epk包里的hi.txt文件

	void	SetExtFilePath(char *path);	// 设置扩展搜索路径
	参数:外部检索的基目录
	返回值:无
	说明:外部检索的目录规则是:基目录+文件包主名,如:SetExtFilePath

	bool	ConnectFileProvider(char *ProviderName);	// 联接到外部FileProvider
	void	FreeProvider();	// 释放FileProvider

	bool	Open(char* FileName,bool bReadOnly=true,bool bPacked=false,char *password=NULL);
	void	Close();
	bool	LocateFile(char* PathName,char *password=NULL);	// 定位一个文件
	DWORD	GetFileSize();				// 取得当前文件的大小
	bool	Read(LPBYTE *buffer=NULL,DWORD size=0);	// 读取当前文件数据到引擎缓冲
	bool	Write(LPCVOID buffer,DWORD size);	// 写入当前文件
	bool	Seek(long move, BYTE method=FILE_CURRENT);	// 移动当前文件指针

	LPBYTE	GetBuffer(){ return m_lpBuffer; }	// 取得文件数据缓冲
	DWORD	GetBufferLen(){ return m_BufferLen; }
	bool	WriteBufferToFile(char *PathName);	// 将缓冲区数据写入文件

⌨️ 快捷键说明

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