CorpSms/DLG_SmsEmail_Add.cpp

180 lines
4.6 KiB
C++
Raw Permalink Normal View History

2025-02-27 16:58:16 +08:00
// 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();
}