180 lines
4.6 KiB
C++
180 lines
4.6 KiB
C++
// DLG_SmsEmail_Add.cpp : implementation file
|
||
//
|
||
|
||
#include "stdafx.h"
|
||
#include "corpsms.h"
|
||
#include "DLG_SmsEmail_Add.h"
|
||
|
||
#ifdef _DEBUG
|
||
#define new DEBUG_NEW
|
||
#undef THIS_FILE
|
||
static char THIS_FILE[] = __FILE__;
|
||
#endif
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// DLG_SmsEmail_Add dialog
|
||
|
||
#include "..\public\pop3\pop3.h"
|
||
|
||
DLG_SmsEmail_Add::DLG_SmsEmail_Add(CWnd* pParent /*=NULL*/)
|
||
: CDialog(DLG_SmsEmail_Add::IDD, pParent)
|
||
{
|
||
//{{AFX_DATA_INIT(DLG_SmsEmail_Add)
|
||
m_strIP = _T("");
|
||
m_strMobile = _T("");
|
||
m_strName = _T("");
|
||
m_strPasswd = _T("");
|
||
m_strUser = _T("");
|
||
m_bEnable = FALSE;
|
||
m_lCheckTime = 5;
|
||
//}}AFX_DATA_INIT
|
||
}
|
||
|
||
|
||
void DLG_SmsEmail_Add::DoDataExchange(CDataExchange* pDX)
|
||
{
|
||
CDialog::DoDataExchange(pDX);
|
||
//{{AFX_DATA_MAP(DLG_SmsEmail_Add)
|
||
DDX_Text(pDX, IDC_SMSEMAIL_ADD_IP, m_strIP);
|
||
DDV_MaxChars(pDX, m_strIP, 48);
|
||
DDX_Text(pDX, IDC_SMSEMAIL_ADD_MOBILE, m_strMobile);
|
||
DDV_MaxChars(pDX, m_strMobile, 32);
|
||
DDX_Text(pDX, IDC_SMSEMAIL_ADD_NAME, m_strName);
|
||
DDV_MaxChars(pDX, m_strName, 48);
|
||
DDX_Text(pDX, IDC_SMSEMAIL_ADD_PASSWD, m_strPasswd);
|
||
DDV_MaxChars(pDX, m_strPasswd, 32);
|
||
DDX_Text(pDX, IDC_SMSEMAIL_ADD_USER, m_strUser);
|
||
DDV_MaxChars(pDX, m_strUser, 48);
|
||
DDX_Check(pDX, IDC_SMSEMAIL_ADD_STATUS, m_bEnable);
|
||
DDX_Text(pDX, IDC_SMSEMAIL_ADD_CHECKTIME, m_lCheckTime);
|
||
DDV_MinMaxUInt(pDX, m_lCheckTime, 1, 1000);
|
||
//}}AFX_DATA_MAP
|
||
}
|
||
|
||
|
||
BEGIN_MESSAGE_MAP(DLG_SmsEmail_Add, CDialog)
|
||
//{{AFX_MSG_MAP(DLG_SmsEmail_Add)
|
||
//}}AFX_MSG_MAP
|
||
END_MESSAGE_MAP()
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// DLG_SmsEmail_Add message handlers
|
||
|
||
void DLG_SmsEmail_Add::SetParam(CString strMobile, ANS_Email_MailData mail)
|
||
{
|
||
USES_CONVERSION;
|
||
m_strMobile= strMobile;
|
||
m_bEnable = mail.lStatus;
|
||
m_strName = mail.szName;
|
||
m_strIP = mail.szIP;
|
||
m_strUser = mail.szUser;
|
||
m_lCheckTime=mail.lCheckTime;
|
||
CDes des;
|
||
#ifdef UNICODE
|
||
char szPasswd21[64]={0};
|
||
char szPasswd22[64]={0};
|
||
char szUser[64]={0};
|
||
strcpy( szPasswd21 , W2A(mail.szPasswd) );
|
||
strcpy( szUser , W2A(mail.szUser ) );
|
||
long lLen=sizeof(szPasswd22);
|
||
des.Encrypt( szPasswd21 , strlen(szPasswd21) , szPasswd22 , lLen , szUser , 8 );
|
||
m_strPasswd = A2W(szPasswd22);
|
||
#else
|
||
char szPasswd[32]={0};
|
||
long lOut = sizeof(szPasswd);
|
||
des.Decrypt( mail.szPasswd , _tcslen(mail.szPasswd),szPasswd,lOut,mail.szUser,8);
|
||
m_strPasswd= szPasswd;
|
||
#endif
|
||
}
|
||
|
||
BOOL DLG_SmsEmail_Add::OnInitDialog()
|
||
{
|
||
CDialog::OnInitDialog();
|
||
|
||
UpdateData(false);
|
||
|
||
return TRUE; // return TRUE unless you set the focus to a control
|
||
// EXCEPTION: OCX Property Pages should return FALSE
|
||
}
|
||
|
||
void DLG_SmsEmail_Add::OnOK()
|
||
{
|
||
USES_CONVERSION;
|
||
if ( !UpdateData(true) )
|
||
return ;
|
||
|
||
if ( m_strMobile.GetLength() <= 0 )
|
||
{
|
||
#ifdef MOBSET_CARD_VER
|
||
MessageBox( _T("<EFBFBD>ֻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>и<EFBFBD><EFBFBD>ģ<EFBFBD>"),_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"),MB_ICONWARNING );
|
||
#else
|
||
MessageBox( _T("<EFBFBD>ֻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD>"),_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"),MB_ICONWARNING );
|
||
#endif
|
||
return ;
|
||
}
|
||
|
||
if ( m_strName.GetLength() <= 0 )
|
||
{
|
||
MessageBox( _T("<EFBFBD><EFBFBD><EFBFBD>Ʋ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룡") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
GetDlgItem(IDC_SMSEMAIL_ADD_NAME)->SetFocus();
|
||
return;
|
||
}
|
||
|
||
if ( m_strIP.GetLength() <= 0 )
|
||
{
|
||
MessageBox( _T("<EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룡") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
GetDlgItem(IDC_SMSEMAIL_ADD_IP)->SetFocus();
|
||
return;
|
||
}
|
||
|
||
if ( m_strUser.GetLength() <= 0 )
|
||
{
|
||
MessageBox( _T("<EFBFBD>ʼ<EFBFBD><EFBFBD>ʺŲ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룡") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
GetDlgItem(IDC_SMSEMAIL_ADD_USER)->SetFocus();
|
||
return;
|
||
}
|
||
|
||
//<2F><><EFBFBD><EFBFBD>Email<69><6C>ַ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч
|
||
this->SetWindowText( _T("<EFBFBD><EFBFBD><EFBFBD>ڼ<EFBFBD><EFBFBD><EFBFBD>Email<EFBFBD><EFBFBD>ַ...") );
|
||
this->BeginWaitCursor();
|
||
CPop3Connection pop;
|
||
pop.SetTimeout( 20000 );
|
||
if ( !pop.Connect(m_strIP,m_strUser,m_strPasswd) )
|
||
{
|
||
this->SetWindowText( _T("<EFBFBD>༭<EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD>Ŀ") );
|
||
this->EndWaitCursor();
|
||
pop.Disconnect();
|
||
MessageBox( _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Email<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>ʺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!"),_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"),MB_ICONWARNING );
|
||
GetDlgItem(IDC_SMSEMAIL_ADD_USER)->SetFocus();
|
||
return;
|
||
}
|
||
pop.Disconnect();
|
||
this->EndWaitCursor();
|
||
|
||
#ifdef UNICODE
|
||
char szPasswd[64]={0};
|
||
char szSPasswd[64]={0};
|
||
char szUser[64]={0};
|
||
strcpy(szSPasswd,W2A(m_strPasswd));
|
||
strcpy(szUser,W2A(m_strUser));
|
||
CDes des;
|
||
long lOut = sizeof(szPasswd);
|
||
des.Encrypt(szSPasswd ,strlen(szSPasswd),szPasswd,lOut,szUser,8);
|
||
m_strPasswd= A2W(szPasswd);
|
||
#else
|
||
char szPasswd[64]={0};
|
||
char szSPasswd[64]={0};
|
||
char szUser[64]={0};
|
||
strcpy(szSPasswd,m_strPasswd);
|
||
strcpy(szUser,m_strUser);
|
||
CDes des;
|
||
long lOut = sizeof(szPasswd);
|
||
des.Encrypt(szSPasswd ,m_strPasswd.GetLength(),szPasswd,lOut,szUser,8);
|
||
m_strPasswd= szPasswd;
|
||
#endif
|
||
UpdateData(false);
|
||
|
||
CDialog::OnOK();
|
||
}
|
||
|