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|XEIM C/S 版飞鸽传书,2010-8-30 更新 XEIM 是一套企业即时通讯软件,可以用于局域网或整个互联网。C++ 开发,开发工具是Visual VC++ 6.0。基本上避免使用任何SDK,或者其他库,所以,直接可以在 Visual VC++ 6.0 下编译通过。这套软件是Feim Studios开发的,团队就几个人吧,大概开发了2年左右,因为软件本来就是开源的,所以在这里把代码给大家了。 XEIM飞鸽传书)是一款优秀的企业即时通讯工具,它具有体积小、速度快、运行稳定、半自动化等特点;所有被公认为目前企业即时通讯软件中比较优秀的一款。企业即时通讯软件是即时通讯软件的一种,主要用于企业局域网内部。因此,企业即时通讯软件具有以下特点:传输速度快、信息具有保密性、防止员工与公司外人员聊天,更多介绍:(http://www.freeeim.com/xeim/)XEIM|XEIM C/S 版飞鸽传书,2010-8-30 更新。 目前,多数企业都存在着一个严重的安全隐患:即时通讯软件,让企业信息极容易对外暴露。如果企业的核心安全机密,一旦泄密将带来灾难性的后果。那么,如何在使用沟通工具的同时也保证信息安全呢?XEIM 局域网聊天工具是一款全新的整合式企业即时通讯系统,它与外部互联网彻底隔绝,为企业提供各种基于内部网络的沟通方法,如语音通讯、文件传输、消息发送等。部署 FreeEIM,IT 专业人员只需简单地在每台 PC 上安装并运行 XEIM 即可,无需配置服务器,同时快速有效地满足企业内部协同办公的各种需求。 最新版本功能:文字消息发送;文件传输;语音对话;聊天记录查询;消息群发;自定义划分部门;
XEIM 是一套企业即时通讯软件,可以用于局域网或整个互联网。C++ 开发,开发工具是Visual VC++ 6.0。基本上避免使用任何SDK,或者其他库,所以,直接可以在 Visual VC++ 6.0 下编译通过。这套软件是Feim Studios开发的,团队就几个人吧,大概开发了2年左右,因为软件本来就是开源的,所以在这里把代码给大家了。 XEIM飞鸽传书)是一款优秀的企业即时通讯工具,它具有体积小、速度快、运行稳定、半自动化等特点;所有被公认为目前企业即时通讯软件中比较优秀的一款。企业即时通讯软件是即时通讯软件的一种,主要用于企业局域网内部。因此,企业即时通讯软件具有以下特点:传输速度快、信息具有保密性、防止员工与公司外人员聊天,更多介绍:(http://www.freeeim.com/xeim/) 目前,多数企业都存在着一个严重的安全隐患:即时通讯软件,让企业信息极容易对外暴露。如果企业的核心安全机密,一旦泄密将带来灾难性的后果。那么,如何在使用沟通工具的同时也保证信息安全呢?XEIM 局域网聊天工具是一款全新的整合式企业即时通讯系统,它与外部互联网彻底隔绝,为企业提供各种基于内部网络的沟通方法,如语音通讯、文件传输、消息发送等。部署 FreeEIM,IT 专业人员只需简单地在每台 PC 上安装并运行 XEIM 即可,无需配置服务器,同时快速有效地满足企业内部协同办公的各种需求。 最新版本功能:文字消息发送;文件传输;语音对话;聊天记录查询;消息群发;自定义划分部门;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值