日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

XEIM 配置程序源代码

發(fā)布時間:2025/3/15 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 XEIM 配置程序源代码 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

#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()
{
?// 數(shù)據(jù)庫配置信息
?m_szServer = "localhost";
?m_szDatabase = "xeimDatabase"; // 數(shù)據(jù)庫信息;
?m_nType = MS_ACCESS; // 使用的數(shù)據(jù)庫類型,這里默認 access;
?m_szUserName = "xeim"; // 數(shù)據(jù)庫訪問名稱;
?m_szPassword = "xeim"; // 數(shù)據(jù)庫訪問密碼;
?szxUserTable = "xeim_user";// 用戶信息表;
?szxMessageTable = "xeim_message";// 消息信息表;
?szxContactTable = "xeim_contact";// 聯(lián)系人信息表;

?/* 聯(lián)系人字段 */
?szxGroup = "GroupID";// 用戶分組;
?szxContact = "FieldID";// 用戶的聯(lián)系人;
?// 數(shù)據(jù)字段對應表
?szxID = "ID";//用來保存唯一的用戶ID值;
?szxLogin = "xlogin";//保存用戶登錄名;
?szxName = "xname";//保存用戶姓名;
?szxPassword = "xpassword";//保存用戶密碼;
?szxStatus = "xstatus";//保存用戶當前狀態(tài);
?szxClient = "xclient";//保存用戶當前登錄的軟件版本號;
?szxIP = "xip";//保存用戶當前登錄的IP地址;

?/* 消息保存配置 */
?szxMsgType = "MsgType";// 消息類型
?szxMsgSend = "SendID";// 消息發(fā)送者
?szxMsgRecv = "GetID";// 消息接收者
?szxMsgData = "MsgData";// 消息數(shù)據(jù)
?szxMsgDate = "SendTime";// 發(fā)送日期
?szxMsgRead = "GetTime"; // 接收日期

?ReadFieldInfo();
}

XEIM_Config::~XEIM_Config()
{
}

void XEIM_Config::ReadFieldInfo()
{
?// 檢查用戶設置文件
?CIniReader iniReader(GetConfigFilePath());


?//
?// 讀取用戶字段信息 Databases_User
?if (iniReader.sectionExists(GROUP1))
?{
??// 數(shù)據(jù)字段對應表
??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 // 不存在則新建一個
?{
??// 數(shù)據(jù)字段對應表
??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);
?}


?
?//
?// 讀取數(shù)據(jù)庫配置信息 Databases_Config
?if (iniReader.sectionExists(GROUP2))
?{
??// 數(shù)據(jù)字段對應表
//??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 // 不存在則新建一個
?{
??// 數(shù)據(jù)字段對應表
//??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

?// 數(shù)據(jù)字段對應表
?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);

?

?//
?// 保存數(shù)據(jù)庫配置信息 Databases_Config
?// 數(shù)據(jù)字段對應表

?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 配置程序源代码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。