// Dlg_Pwd.cpp : 实现文件 // #include "stdafx.h" #include "IDE.h" #include "Dlg_Pwd.h" #include "MainFrm.h" #include "md5class.h" #include ".\dlg_pwd.h" // CDlg_Pwd 对话框 IMPLEMENT_DYNAMIC(CDlg_Pwd, CDialog) CDlg_Pwd::CDlg_Pwd(CWnd* pParent /*=NULL*/) : CDialog(CDlg_Pwd::IDD, pParent) { m_nShowType = 0; } CDlg_Pwd::~CDlg_Pwd() { } void CDlg_Pwd::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Control(pDX, IDC_EDIT_PWD1, m_ctrlPwd1); DDX_Control(pDX, IDC_EDIT_PWD2, m_ctrlPwd2); } BEGIN_MESSAGE_MAP(CDlg_Pwd, CDialog) ON_BN_CLICKED(IDOK, OnBnClickedOk) ON_WM_SHOWWINDOW() END_MESSAGE_MAP() // CDlg_Pwd 消息处理程序 BOOL CDlg_Pwd::OnInitDialog() { CDialog::OnInitDialog(); // TODO: 在此添加额外的初始化 CHAR strFile[MAX_FILE_LENGTH + 1] = ""; wsprintf(strFile, "%s\\clientset.ini", g_strDirectory); CHAR strPwd[MAX_PASSWORD_LENGTH + 1] = ""; GetPrivateProfileString("User", "ControlPwd","", strPwd,sizeof(strPwd), strFile ); if( m_nShowType==1 ) { GetDlgItem(IDC_STATIC_1)->ShowWindow( SW_HIDE ); GetDlgItem(IDC_EDIT_PWD2)->ShowWindow( SW_HIDE ); m_sPwd = (CString)strPwd; } else { m_ctrlPwd1.SetWindowText( strPwd ); m_ctrlPwd2.SetWindowText( strPwd ); UpdateData(false);// } return TRUE; // return TRUE unless you set the focus to a control // 异常: OCX 属性页应返回 FALSE } void CDlg_Pwd::OnBnClickedOk() { UpdateData(TRUE); CHAR strFile[MAX_FILE_LENGTH + 1] = ""; wsprintf(strFile, "%s\\clientset.ini", g_strDirectory); if( m_nShowType==1 ) { CString strNewPwd, strOldPwd, strConfirmPwd, strMsg; //检查数据有效性 m_ctrlPwd1.GetWindowText(strNewPwd); CMD5 md5NewPwd; md5NewPwd.setPlainText( (char *)(LPCTSTR)strNewPwd ); if( m_sPwd!=md5NewPwd.getMD5Digest() ) { MessageBox(g_strpasswordInCorrect, g_strTip, MB_ICONINFORMATION); return; } } else { CString strNewPwd,strConfirmPwd,strMsg; //检查数据有效性 m_ctrlPwd1.GetWindowText(strNewPwd); m_ctrlPwd2.GetWindowText(strConfirmPwd); if(strNewPwd.Compare(strConfirmPwd)) { m_ctrlPwd1.SetWindowText(""); m_ctrlPwd1.SetWindowText(""); m_ctrlPwd1.SetFocus(); MessageBox(g_strPasswordNotMatch1, g_strTip, MB_ICONINFORMATION); return; } CMD5 md5NewPwd; md5NewPwd.setPlainText( (char *)(LPCTSTR)strNewPwd ); CHAR strPWD[MAX_FILE_LENGTH + 1] = ""; CString strPwd = CString(md5NewPwd.getMD5Digest()); WritePrivateProfileString("User", "ControlPwd", strPwd, strFile ); } OnOK(); } void CDlg_Pwd::OnShowWindow(BOOL bShow, UINT nStatus) { CDialog::OnShowWindow(bShow, nStatus); // TODO: 在此处添加消息处理程序代码 m_ctrlPwd1.SetFocus(); }