📄 passphrase.cpp
字号:
// PassPhrase.cpp : implementation file
//
#include "stdafx.h"
#include "Logs.h"
#include "PassPhrase.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CPassPhrase dialog
CPassPhrase::CPassPhrase(CWnd* pParent /*=NULL*/)
: CDialog(CPassPhrase::IDD, pParent)
{
//{{AFX_DATA_INIT(CPassPhrase)
m_csPassPhrase = _T("");
m_csPassword = _T("");
//}}AFX_DATA_INIT
}
void CPassPhrase::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CPassPhrase)
DDX_Control(pDX, EDT_PASSPHRASE, m_EditControl);
DDX_Text(pDX, EDT_PASSPHRASE, m_csPassPhrase);
DDX_Text(pDX, EDT_PASSWORD, m_csPassword);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CPassPhrase, CDialog)
//{{AFX_MSG_MAP(CPassPhrase)
ON_WM_PAINT()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CPassPhrase message handlers
void CPassPhrase::OnOK()
{
CLogsApp* pcLogger = (CLogsApp*) AfxGetApp();
UpdateData();
if (m_csPassPhrase.IsEmpty()) {
int nRet = MessageBox ("Please enter a PassPhrase","Error: PassPhrase",MB_OKCANCEL | MB_ICONEXCLAMATION);
if (nRet == IDOK) {
m_EditControl.SetFocus() ;
GetDlgItem(EDT_PASSPHRASE)->SetWindowText("");
}
else {
EndDialog (0);
}
}
else {
CString csPassPhrase = m_csPassPhrase;
CRegistry reg;
reg.SetRootKey(HKEY_LOCAL_MACHINE);
reg.SetKey("SOFTWARE\\LogDemo\\Settings", TRUE);
CString csUserPPhrase = reg.ReadString("UserPassPhrase", _T("Error"));
if (csUserPPhrase == "Error") {
csUserPPhrase = pcLogger->clLogs.EncryptString(csPassPhrase, pcLogger->clLogs.m_csAppsPPhrase);
reg.WriteString(_T("UserPassPhrase"), csUserPPhrase);
}
else {
csPassPhrase = pcLogger->clLogs.DecryptString(csUserPPhrase, pcLogger->clLogs.m_csAppsPPhrase);
}
if (csPassPhrase == m_csPassPhrase) {
pcLogger->clLogs.m_bGoodPassPhrase = TRUE;
CString csUserAdminPwd = m_csPassword;
CString csAdminPwd = reg.ReadString("AdminPassword", _T("Error"));
if (csAdminPwd == "Error") {
csAdminPwd = pcLogger->clLogs.EncryptString(m_csPassword, pcLogger->clLogs.m_csAppsPPhrase);
reg.WriteString(_T("AdminPassword"), csAdminPwd);
csAdminPwd = csUserAdminPwd;
}
else {
csUserAdminPwd = pcLogger->clLogs.DecryptString(csAdminPwd, pcLogger->clLogs.m_csAppsPPhrase);
csAdminPwd = csUserAdminPwd;
}
if (csAdminPwd == m_csPassword) {
pcLogger->clLogs.m_bGoodAdmPwd = TRUE;
pcLogger->clLogs.WriteLog(_T("Logged in as an Administrator..."), 8);
}
else {
pcLogger->clLogs.m_bGoodAdmPwd = FALSE;
pcLogger->clLogs.WriteLog(_T("Logged in as an Normal (Read-Only) User..."), 8);
}
EndDialog (1);
}
else {
pcLogger->clLogs.m_bGoodPassPhrase = FALSE;
pcLogger->clLogs.WriteLog(_T("The Pass Phrase was entered incorrectly"), 1);
int nRet = MessageBox ("Please Re-enter the correct PassPhrase","Error: PassPhrase",MB_OKCANCEL | MB_ICONEXCLAMATION);
if (nRet == IDOK) {
m_EditControl.SetFocus() ;
GetDlgItem(EDT_PASSPHRASE)->SetWindowText("");
}
else {
EndDialog (0);
}
}
}
}
void CPassPhrase::OnCancel()
{
EndDialog (0);
}
void CPassPhrase::OnPaint()
{
CPaintDC dc(this); // device context for painting
m_EditControl.SetFocus() ;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -