1、ini文件的作用
.ini文件是系统配置文件,统管windows的各项配置,是windows的系统配置文件所采用的存储格式,使用的软件中的配置信息就储存在ini文件中。作为系统配置文件,ini文件可以用来存放软件信息、注册表信息等
2、我的文件夹结构
可执行文件在:E:\WHFCode\MFCAppCOMTEST\Debug
configure.ini文件我打算放在:E:\WHFCode\MFCAppCOMTEST
3、代码示例
//用于获取.exe的路径
static CString GetAppPath()
{
TCHAR myBuff[MAX_PATH];
//获取已加入线程的指定模块的完整路径
GetModuleFileName(NULL, myBuff, MAX_PATH);
for (int i = _tcslen(myBuff); i; i--)
{
//将反斜杠转化为真正的反斜杠
if (myBuff[i] == _T('\\'))
{
myBuff[i] = _T('\0');
break;
}
}
//初始化字符数组
TCHAR myBuffFull[MAX_PATH] = { 0 };
//该函数用于获取一个可执行文件或动态链接库(DLL)的完整路径
if (_tfullpath(myBuffFull, myBuff, MAX_PATH) == NULL)
{
}
return myBuffFull;
}
//调用函数GetAppPath获取.exe的路径
CString path = GetAppPath();
//.ini的文件路径
CString iniFile = "";
iniFile.Format("%s", path);
//查找最后一个字符匹配的索引
int iPosition = iniFile.ReverseFind('\\');
//返回索引左侧的字符串
iniFile = iniFile.Left(iPosition);
TCHAR szFullPath[260];
//获取当前目录下名为iniFile的完整路径
_tfullpath(szFullPath, iniFile, 260);
iniFile = szFullPath;
//ini文件的路径
iniFile = iniFile + "\\configure.ini";
//缓冲区大小
TCHAR buffer[MAX_PATH];
//获取.ini文件中view节中name的值
GetPrivateProfileString("switch", "name", "whf", buffer, MAX_PATH, iniFile);
//该函数是将字符串转化为整数类型
if (atoi(buffer)!=0)
{
AfxMessageBox("获取数据到缓冲区");
}
else {
WritePrivateProfileString("switch", "user", "1", iniFile);
}