Dlg_InsertDB.cpp 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. // Dlg_InsertDB.cpp : 实现文件
  2. //
  3. #include "stdafx.h"
  4. #include "SupportSmsPlatform.h"
  5. #include "Dlg_InsertDB.h"
  6. #include ".\dlg_insertdb.h"
  7. #include "TCPClient.h"
  8. // CDlg_InsertDB 对话框
  9. IMPLEMENT_DYNAMIC(CDlg_InsertDB, CDialog)
  10. CDlg_InsertDB::CDlg_InsertDB(CWnd* pParent /*=NULL*/)
  11. : CDialog(CDlg_InsertDB::IDD, pParent)
  12. , m_sComb_DBType(_T(""))
  13. , m_sEdit_DBIP(_T(""))
  14. , m_sEdit_DBName(_T(""))
  15. , m_sEdit_DBUser(_T(""))
  16. , m_sEdit_DBPwd(_T(""))
  17. , m_sEdit_SQL(_T(""))
  18. , m_sEdit_Key(_T(""))
  19. , m_bCheck_KeyAutoAdd(FALSE)
  20. , m_nEdit_KeyInit(0)
  21. {
  22. m_bDBThreadStart = false;
  23. }
  24. CDlg_InsertDB::~CDlg_InsertDB()
  25. {
  26. }
  27. void CDlg_InsertDB::DoDataExchange(CDataExchange* pDX)
  28. {
  29. CDialog::DoDataExchange(pDX);
  30. DDX_Control(pDX, IDC_COMBO_DBTYEP, m_Comb_DBType);
  31. DDX_CBString(pDX, IDC_COMBO_DBTYEP, m_sComb_DBType);
  32. DDX_Text(pDX, IDC_EDIT_DBIP, m_sEdit_DBIP);
  33. DDX_Text(pDX, IDC_EDIT_DBNAME, m_sEdit_DBName);
  34. DDX_Text(pDX, IDC_EDIT_DBUSER, m_sEdit_DBUser);
  35. DDX_Text(pDX, IDC_EDIT_DBPWD, m_sEdit_DBPwd);
  36. DDX_Text(pDX, IDC_EDIT_CONTENT, m_sEdit_SQL);
  37. DDX_Text(pDX, IDC_EDIT_KEY, m_sEdit_Key);
  38. DDX_Text(pDX, IDC_EDIT_KEYINIT, m_nEdit_KeyInit);
  39. DDX_Check(pDX, IDC_CHECK_KEYAUTOADD, m_bCheck_KeyAutoAdd);
  40. }
  41. BEGIN_MESSAGE_MAP(CDlg_InsertDB, CDialog)
  42. ON_BN_CLICKED(IDC_CHECK_KEYAUTOADD, OnBnClickedCheckKeyautoadd)
  43. END_MESSAGE_MAP()
  44. // CDlg_InsertDB 消息处理程序
  45. BOOL CDlg_InsertDB::OnInitDialog()
  46. {
  47. CDialog::OnInitDialog();
  48. // TODO: 在此添加额外的初始化
  49. GetIni();
  50. return TRUE; // return TRUE unless you set the focus to a control
  51. // 异常: OCX 属性页应返回 FALSE
  52. }
  53. void CDlg_InsertDB::GetIni()
  54. {
  55. g_IniFile.GetVarStr( "Database_RomoteDB","ServerName",m_sEdit_DBIP );
  56. g_IniFile.GetVarStr( "Database_RomoteDB","DataBaseName",m_sEdit_DBName );
  57. g_IniFile.GetVarStr( "Database_RomoteDB","UserName",m_sEdit_DBUser );
  58. g_IniFile.GetVarStr( "Database_RomoteDB","Password",m_sEdit_DBPwd );
  59. g_IniFile.GetVarStr( "Database_RomoteDB","DBType",m_sComb_DBType );
  60. UpdateData( false );
  61. }
  62. void CDlg_InsertDB::SetIni()
  63. {
  64. UpdateData( );
  65. g_IniFile.SetVarStr( "Database_RomoteDB","ServerName",m_sEdit_DBIP );
  66. g_IniFile.SetVarStr( "Database_RomoteDB","DataBaseName",m_sEdit_DBName );
  67. g_IniFile.SetVarStr( "Database_RomoteDB","UserName",m_sEdit_DBUser );
  68. g_IniFile.SetVarStr( "Database_RomoteDB","Password",m_sEdit_DBPwd );
  69. g_IniFile.SetVarStr( "Database_RomoteDB","DBType",m_sComb_DBType );
  70. }
  71. bool CDlg_InsertDB::Apply()
  72. {
  73. SetIni();
  74. //数据库连接串
  75. if (!_stricmp(m_sComb_DBType, "SQL SERVER"))
  76. sprintf(g_strConnectString, "Provider=sqloledb;Data Source=%s;Initial Catalog=%s;User Id=%s;Password=%s; ",
  77. m_sEdit_DBIP, m_sEdit_DBName, m_sEdit_DBUser, m_sEdit_DBPwd);
  78. //else if (!_stricmp(g_strDBType, "ACCESS97"))
  79. // sprintf(g_strConnectString, "Provider=Microsoft.Jet.OLEDB.3.51;Data Source=%s", m_sEdit_AccessName);
  80. //else if (!_stricmp(g_strDBType, "ACCESS2000"))
  81. // sprintf(g_strConnectString, "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=%s", m_sEdit_AccessName);
  82. else if(!_stricmp(m_sComb_DBType, "PGSQL"))
  83. sprintf(g_strConnectString, "DRIVER={PostgreSQL ODBC Driver(UNICODE)}; SERVER=%s; port=5432; DATABASE=%s; UID=%s; PWD=%s;",
  84. m_sEdit_DBIP, m_sEdit_DBName, m_sEdit_DBUser, m_sEdit_DBPwd);
  85. else
  86. sprintf(g_strConnectString, "Provider=sqloledb;Data Source=%s;Initial Catalog=%s;User Id=%s;Password=%s; ",
  87. m_sEdit_DBIP, m_sEdit_DBName, m_sEdit_DBUser, m_sEdit_DBPwd);
  88. if( !CDBConnection::GetInstancePtr()->OpenDataBase(g_strConnectString) )
  89. {
  90. MessageBox( "连接数据库失败!" );
  91. return false;
  92. }
  93. m_bDBThreadStart = true;
  94. CDBConnection::GetInstancePtr()->DBConnectionCheckThreadStart();
  95. CDBInterface::GetInstancePtr()->SetDBType(g_strDBType);
  96. if( !CTCPClient::GetInstancePtr(0)->Connection( "127.0.0.1", "64326" ) )
  97. {
  98. MessageBox( "连接服务器失败!" );
  99. return false;
  100. }
  101. return true;
  102. }
  103. void CDlg_InsertDB::OnBnClickedCheckKeyautoadd()
  104. {
  105. UpdateData();
  106. //if( m_bCheck_KeyAutoAdd )
  107. //{
  108. // GetDlgItem( IDC_EDIT_KEY )->EnableWindow( true );
  109. // GetDlgItem( IDC_EDIT_KEYINIT )->EnableWindow( true );
  110. //}
  111. //else
  112. //{
  113. // GetDlgItem( IDC_EDIT_KEY )->EnableWindow( false );
  114. // GetDlgItem( IDC_EDIT_KEYINIT )->EnableWindow( false );
  115. //}
  116. }