frmviewmd5encode.cpp

来自「序列号生成工具,使用MD5加密算法,生成程序的序列号,帮助程序员保护自己的产权.」· C++ 代码 · 共 110 行

CPP
110
字号
// FrmViewMD5Encode.cpp : implementation file
//

#include "stdafx.h"
#include "UserRegister.h"
#include "FrmViewMD5Encode.h"
#include "MD5.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CFrmViewMD5Encode

IMPLEMENT_DYNCREATE(CFrmViewMD5Encode, CFormView)

CFrmViewMD5Encode::CFrmViewMD5Encode()
	: CFormView(CFrmViewMD5Encode::IDD)
{
	//{{AFX_DATA_INIT(CFrmViewMD5Encode)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}

CFrmViewMD5Encode::~CFrmViewMD5Encode()
{
}

void CFrmViewMD5Encode::DoDataExchange(CDataExchange* pDX)
{
	CFormView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CFrmViewMD5Encode)
		// NOTE: the ClassWizard will add DDX and DDV calls here
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CFrmViewMD5Encode, CFormView)
	//{{AFX_MSG_MAP(CFrmViewMD5Encode)
	ON_BN_CLICKED(BTN_CREATEREGCODE, OnCreateregcode)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CFrmViewMD5Encode diagnostics

#ifdef _DEBUG
void CFrmViewMD5Encode::AssertValid() const
{
	CFormView::AssertValid();
}

void CFrmViewMD5Encode::Dump(CDumpContext& dc) const
{
	CFormView::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CFrmViewMD5Encode message handlers
CString CFrmViewMD5Encode::GetMD5Encode(CString strText,CString strKey)
{
	CMD5 md5;
	CString strMD5Value= md5.hmac_md5(strText.GetBuffer(1),strKey.GetBuffer(1));
	return strMD5Value;
}

void CFrmViewMD5Encode::OnCreateregcode() 
{
	// TODO: Add your control notification handler code here
	CString strSrc,strKey,strMD5Encode;
	CEdit* edtobj= (CEdit*)GetDlgItem(EDT_SRCSTR);
	edtobj->GetWindowText(strSrc);
	edtobj= (CEdit*)GetDlgItem(EDT_KEY);
	edtobj->GetWindowText(strKey);

	strMD5Encode= GetMD5Encode(strSrc,strKey);
	edtobj= (CEdit*)GetDlgItem(EDT_MD5STR);
	strMD5Encode= "原始码:"+strSrc+"\r\n"+"KEY:     "+strKey+"\r\n"+"加密编码:"+strMD5Encode+"\r\n";
	edtobj->SetWindowText(strMD5Encode);
}

BOOL CFrmViewMD5Encode::PreTranslateMessage(MSG* pMsg) 
{
	// TODO: Add your specialized code here and/or call the base class
	if(pMsg->message== WM_KEYDOWN)
	{
		if((pMsg->wParam== 'C' || pMsg->wParam=='c') && GetKeyState(VK_CONTROL))
		{
			CEdit* edtobj= (CEdit*)this->GetFocus();
			edtobj->Copy();
		}
		if((pMsg->wParam== 'V' || pMsg->wParam=='v') && GetKeyState(VK_CONTROL))
		{
			CEdit* edtobj= (CEdit*)this->GetFocus();
			edtobj->Paste();
		}
		if((pMsg->wParam== 'X' || pMsg->wParam=='x') && GetKeyState(VK_CONTROL))
		{
			CEdit* edtobj= (CEdit*)this->GetFocus();
			edtobj->Cut();
		}
	}
	
	return CFormView::PreTranslateMessage(pMsg);
}

⌨️ 快捷键说明

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