写入.ini文件:bool WritePrivateProfileString(LPCTSTR lpAppName,LPCTSTR lpKeyName,LPCTSTR lpString,LPCTSTR lpFileName);
读取.ini文件:DWORD GetPrivateProfileString(LPCTSTR lpAppName,LPCTSTR lpKeyName,LPCTSTR lpDefaut,LPSTR lpReturnedString,DWORD nSize,LPCTSTR lpFileName);
读取整形值:UINT GetPrivateProfileInt(LPCTSTR lpAppName,LPCTSTR lpKeyName,INT nDefault,LPCTSTR lpFileName);
还有GetPrivateProfileSection、GetPrivateProfileStruct等函数我没有用过。下面 给出我以前写的一个读取配置文件的函数:
int LoadIniFile(BOOL bLoad){
char FA_serverIP[256];
char FA_serverPort[256];
CString AppPath(__argv[0]); //当前程序路径和程序名
AppPath = AppPath.Left(AppPath.ReverseFind('//')); //去掉文件名,只剩下路径
AppPath +="//netconf.ini";
if (-1 == (_access(AppPath,0))){
AfxMessageBox(_T("没有找到netconf.ini配置文件,请将netconf.ini放在程序所在目录下!"));
char aErr[] = "没有找到netconf.ini配置文件!";
WriteLog(aErr,sizeof(aErr));
exit(0);
}else{
m_ShowConfigPath.SetWindowText("提示: IP地址和端口配置文件放在程序所在目录下.");
} //提示: IP地址和端口配置文件放在程序所在目录下.
memset(FA_serverIP,0,256);
memset(FA_serverPort,0,256);
GetPrivateProfileString("FA_Server","ip",NULL,FA_serverIP,256,AppPath);
GetPrivateProfileString("FA_Server","port",NULL,FA_serverPort,256,AppPath);
tcpAddress.Format("%s",FA_serverIP); //TCP服务器IP
FA_port.Format("%s",FA_serverPort); //TCP服务器端口
return 0;
}//end of method LoadIniFile
这个函数只实现了读配置文件的功能,配置文件netconf.ini放在exe程序所在的目录下(写入配置文件的方法和读取方法一样)netconf.ini的格式为:
[FA_Server]
ip=192.168.32.10
port=2000