📄 md_inifile.h
字号:
//********************************************************************
// MD 引擎 初始化文件 管理部件的定义
// Powered by @J--S Studio Johnhans 2002.8.23
//********************************************************************
#ifndef MD_INIFILE_H
#define MD_INIFILE_H
#ifdef MDENGINE_EXPORTS
#define MDENGINE_API __declspec(dllexport)
#else
#define MDENGINE_API __declspec(dllimport)
#endif
#define ERROR_DATA -99999999
#define _DELETE(X) if( (X) != NULL ) { delete (X); (X) = NULL; }
#define _FREE(X) if( (X) != NULL ) { free(X); (X)=NULL; }
class MDENGINE_API CMD_IniFile
{
public:
CMD_IniFile(void); //初始化部件
CMD_IniFile(char *filename); //初始化部件并打开配置文件
virtual ~CMD_IniFile(void); //销毁部件
public:
bool Open(char *filename); //打开配置文件
bool Save(char *filename=NULL); //保存配置文件
int ReadInt(char *index, char *name, int defvalue); //读一个整数
int ReadInt(char *index, int lines, int defvalue); //在指定的行读一整数
char *ReadText(char *index, char *name, char *defvalue);//读一个字符串
char *ReadText(char *index, int lines, char *defvalue); //在指定的行读一字符串
DWORD ReadIntRegKey(HKEY hKey, char *subkey, char *regname, int valdef);//读取指定注册表键的整数
char *ReadTextRegKey(HKEY hKey, char *subkey, char *regname, char *def);//读取指定注册表键的字符串
BYTE *ReadBinRegkey(HKEY hKey, char *subkey, char *regname, BYTE *def);//读取指定注册表键的二进制串
char *ReadData(char *index, int lines); //在指定行读一字符名称
bool WriteInt(char *index, char *name, int num); //写一个整数
bool WriteText(char *index, char *name, char *string); //写一个字符串
bool WriteIntRegKey(HKEY hKey, char *subkey, char *regname, int value);//向指定注册表位置写一个整数
bool WriteTextRegKey(HKEY hKey, char *subkey, char *regname, char *value);//向指定注册表位置写一个字符串
bool WriteBinRegKey(HKEY hKey, char *subkey, char *regname, BYTE *lpdata, int size);//向指定注册表位置写一个二进制串
char *GetData(void){ return Data; } //返回文件内容
int GetLines(int cur); //返回文件的行数
int GetContinueDataNum(char *index);//返回连续的行数(从INDEX到第一个空行)
private:
char FileName[MAX_PATH]; //文件名
int DataLen; //文件长度
char *Data; //文件内容
int IndexNum; //索引数目
int *IndexList; //索引点位置列表
int Point; //当前指针
int Line, Word; //当前行列
private:
void InitIndex(void); //初始化索引
int FindIndex(char *string); //返回标题位置
int FindData(int index, char *string);//返回数据位置
int GotoNextLine(int p); //提行
char *ReadDataName(int &p); //在指定位置读一数据名称
char *ReadText(int p); //在指定位置读字符串
bool AddIndex(char *index); //加入一个索引
bool AddData(int p, char *name, char *string); //在当前位置加入一个数据
bool ModityData(int p, char *name, char *string);//在当前位置修改一个数据的值
int GetFileLength(char *name); //取文件长度
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -