login.cpp

来自「《Visual C++视频技术方案宝典》配套光盘」· C++ 代码 · 共 85 行

CPP
85
字号
// Login.cpp : implementation file
//

#include "stdafx.h"
#include "EncryptDog.h"
#include "Login.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern short int DogBytes;
extern short int DogAddr;
extern void * DogData;
/////////////////////////////////////////////////////////////////////////////
// CLogin dialog


CLogin::CLogin(CWnd* pParent /*=NULL*/)
	: CDialog(CLogin::IDD, pParent)
{
	//{{AFX_DATA_INIT(CLogin)
	m_Name = _T("");
	//}}AFX_DATA_INIT
	Data= "0000";
	m_Succed = FALSE;
}


void CLogin::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CLogin)
	DDX_Text(pDX, IDC_EDIT1, m_Name);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CLogin, CDialog)
	//{{AFX_MSG_MAP(CLogin)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CLogin message handlers

void CLogin::OnOK() 
{
	// TODO: Add extra validation here
	UpdateData(TRUE);
	DogAddr = 20; //设置起始地址
	DogBytes = 4; //设置数据的长度
	
	if(m_Name.IsEmpty())
	{
		MessageBox("用户名不能为空!");
		return;
	}
	DogData = Data.GetBuffer(8); 
	if (ReadDog()==0)
	{
		if (m_Name == Data)
		{
			m_Succed = TRUE;
			MessageBox("验证成功");
			CDialog::OnOK();
		}
		else
		{
			m_Succed = FALSE;
			MessageBox("验证失败");
		}
	}
}

void CLogin::OnCancel() 
{
	// TODO: Add extra cleanup here
	if(m_Succed ==FALSE)
		PostMessage(WM_QUIT,0,0);
	else
		CDialog::OnCancel();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?