XEIM 配置程序源代码
#include "StdAfx.h"
#include "xeim_users.h"
#include "xiemUsers.h"
#include "xeim_config.h"
#include "xiemUsersDlg.h"
#include "INI.h"
// 飛鴿傳書:http://www.freeeim.com
XEIM_Config::XEIM_Config()
{
?// 數據庫配置信息
?m_szServer = "localhost";
?m_szDatabase = "xeimDatabase"; // 數據庫信息;
?m_nType = MS_ACCESS; // 使用的數據庫類型,這里默認 access;
?m_szUserName = "xeim"; // 數據庫訪問名稱;
?m_szPassword = "xeim"; // 數據庫訪問密碼;
?szxUserTable = "xeim_user";// 用戶信息表;
?szxMessageTable = "xeim_message";// 消息信息表;
?szxContactTable = "xeim_contact";// 聯系人信息表;
?/* 聯系人字段 */
?szxGroup = "GroupID";// 用戶分組;
?szxContact = "FieldID";// 用戶的聯系人;
?// 數據字段對應表
?szxID = "ID";//用來保存唯一的用戶ID值;
?szxLogin = "xlogin";//保存用戶登錄名;
?szxName = "xname";//保存用戶姓名;
?szxPassword = "xpassword";//保存用戶密碼;
?szxStatus = "xstatus";//保存用戶當前狀態;
?szxClient = "xclient";//保存用戶當前登錄的軟件版本號;
?szxIP = "xip";//保存用戶當前登錄的IP地址;
?/* 消息保存配置 */
?szxMsgType = "MsgType";// 消息類型
?szxMsgSend = "SendID";// 消息發送者
?szxMsgRecv = "GetID";// 消息接收者
?szxMsgData = "MsgData";// 消息數據
?szxMsgDate = "SendTime";// 發送日期
?szxMsgRead = "GetTime"; // 接收日期
?ReadFieldInfo();
}
XEIM_Config::~XEIM_Config()
{
}
void XEIM_Config::ReadFieldInfo()
{
?// 檢查用戶設置文件
?CIniReader iniReader(GetConfigFilePath());
?//
?// 讀取用戶字段信息 Databases_User
?if (iniReader.sectionExists(GROUP1))
?{
??// 數據字段對應表
??szxID = iniReader.getKeyValue("id", GROUP1);
??szxLogin = iniReader.getKeyValue("xlogin", GROUP1);
??szxName = iniReader.getKeyValue("xname", GROUP1);
??szxPassword = iniReader.getKeyValue("xpassword", GROUP1);
??szxStatus = iniReader.getKeyValue("xstatus", GROUP1);
??szxClient = iniReader.getKeyValue("xclient", GROUP1);
??szxIP = iniReader.getKeyValue("xip", GROUP1);
?}
?else // 不存在則新建一個
?{
??// 數據字段對應表
??iniReader.setKey(szxID.c_str(), "id", GROUP1);
??iniReader.setKey(szxLogin.c_str(), "xlogin", GROUP1);
??iniReader.setKey(szxName.c_str(), "xname", GROUP1);
??iniReader.setKey(szxPassword.c_str(), "xpassword", GROUP1);
??iniReader.setKey(szxStatus.c_str(), "xstatus", GROUP1);
??iniReader.setKey(szxClient.c_str(), "xclient", GROUP1);
??iniReader.setKey(szxIP.c_str(), "xip", GROUP1);
?}
?
?//
?// 讀取數據庫配置信息 Databases_Config
?if (iniReader.sectionExists(GROUP2))
?{
??// 數據字段對應表
//??m_szTable = iniReader.getKeyValue("table", GROUP2);
??szxUserTable = iniReader.getKeyValue("tab_user", GROUP2);
??szxMessageTable = iniReader.getKeyValue("tab_message", GROUP2);
??szxContactTable = iniReader.getKeyValue("tab_contact", GROUP2);
??m_szServer = iniReader.getKeyValue("server", GROUP2);
??m_szDatabase = iniReader.getKeyValue("database", GROUP2);
??m_szUserName = iniReader.getKeyValue("id", GROUP2);
??m_szPassword = iniReader.getKeyValue("password", GROUP2);
?}
?else // 不存在則新建一個
?{
??// 數據字段對應表
//??iniReader.setKey(m_szTable.c_str(), "table", GROUP2);
??iniReader.setKey(szxContactTable.c_str(), "tab_contact", GROUP2);
??iniReader.setKey(szxMessageTable.c_str(), "tab_message", GROUP2);
??iniReader.setKey(szxUserTable.c_str(), "tab_user", GROUP2);
??iniReader.setKey(m_szServer.c_str(), "server", GROUP2);
??iniReader.setKey(m_szDatabase.c_str(), "database", GROUP2);
??iniReader.setKey(m_szUserName.c_str(), "id", GROUP2);
??iniReader.setKey(m_szPassword.c_str(), "password", GROUP2);
?}
?
?//
?// 配置信息
//?if (iniReader.sectionExists("settings"))
//?{
?//?szDirectory = iniReader.getKeyValue("directory", "settings");
//?}
//?else // 不存在則新建一個
//?{
?//?iniReader.setKey(szDirectory.c_str(), "directory", "settings");
//?}
}
CString XEIM_Config::GetConfigFilePath()
{
?// 檢查用戶設置文件
?char szFileName[_MAX_PATH];
?CXiemUsersApp::GetProgramDirectory(szFileName);
?CString strPath = szFileName;
?strPath += CONFIG_FILE_NAME;
?return strPath;
}
void XEIM_Config::SaveFieldInfo()
{
?// 檢查用戶設置文件
?CIniReader iniReader(GetConfigFilePath());
?//
?// 保存用戶字段信息 Databases_User
?// 數據字段對應表
?iniReader.setKey(szxID.c_str(), "id", GROUP1);
?iniReader.setKey(szxLogin.c_str(), "xlogin", GROUP1);
?iniReader.setKey(szxName.c_str(), "xname", GROUP1);
?iniReader.setKey(szxPassword.c_str(), "xpassword", GROUP1);
?iniReader.setKey(szxStatus.c_str(), "xstatus", GROUP1);
?iniReader.setKey(szxClient.c_str(), "xclient", GROUP1);
?iniReader.setKey(szxIP.c_str(), "xip", GROUP1);
?
?//
?// 保存數據庫配置信息 Databases_Config
?// 數據字段對應表
?iniReader.setKey(szxContactTable.c_str(), "tab_contact", GROUP2);
?iniReader.setKey(szxMessageTable.c_str(), "tab_message", GROUP2);
?iniReader.setKey(szxUserTable.c_str(), "tab_user", GROUP2);
?iniReader.setKey(m_szServer.c_str(), "server", GROUP2);
?iniReader.setKey(m_szDatabase.c_str(), "database", GROUP2);
?iniReader.setKey(m_szUserName.c_str(), "id", GROUP2);
?iniReader.setKey(m_szPassword.c_str(), "password", GROUP2);
}
總結
以上是生活随笔為你收集整理的XEIM 配置程序源代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小波的秘密2_MATLAB图像多尺度分析
- 下一篇: 【飞秋】一起学Windows Phone