I am upgrading a code mentioned below:
what I am trying to do is I have product register for 30 and at 25th day it will remind user to register for year or two it is mentioned in code
Also I want to convert or add new code so that "Purchase Required" turn into "Available" by inserting Product code from Key code generater
Code I mentione is as follow:
#include "stdafx.h"
#include "Parameters.h"
#include "AddaptApp.h"
#include "ProductCode.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
const DWORD CONFUSER = 32767;
CProductCodeDlg::CProductCodeDlg(CWnd* pParent) : CDialog(CProductCodeDlg::IDD, pParent)
{
m_strAddapt98 = _T("Activation Required");
m_strSA = _T("Purchase Required");
m_strViewer = _T("Purchase Required");
m_dwSerialNum = 0;
m_dwProductCode = 0;
}
void CProductCodeDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX, IDC_ADDAPT98, m_strAddapt98);
DDX_Text(pDX, IDC_RTD, m_strSA);
DDX_Text(pDX, IDC_VIEWER, m_strViewer);
DDX_Text(pDX, IDC_PRODUCTCODE, m_dwProductCode);
DDX_Text(pDX, IDC_SERIALNUM, m_dwSerialNum);
}
BEGIN_MESSAGE_MAP(CProductCodeDlg, CDialog)
ON_EN_CHANGE(IDC_PRODUCTCODE, OnProductCodeEntry)
ON_BN_CLICKED(ID_DONE, OnDone)
END_MESSAGE_MAP()
BOOL CProductCodeDlg::OnInitDialog()
{
CDialog::OnInitDialog();
CAddaptApp* pAddaptApp = (CAddaptApp*)AfxGetApp();
m_dwSerialNum = pAddaptApp->m_dwSerialNum;
m_dwProductCode = pAddaptApp->m_dwProductCode;
m_dwInitialCode = m_dwProductCode;
BOOL bDisableEntry = FALSE;
if (pAddaptApp->m_bSA_Available)
m_strSA = "Available";
if (pAddaptApp->m_bViewer_Available)
m_strViewer = "Available";
if (pAddaptApp->m_bProductCodeFound)
{
m_strAddapt98 = "Available";
if( pAddaptApp->m_bViewer_Available )
bDisableEntry = TRUE; }
else
{
if (m_dwProductCode == 0)
m_strAddapt98 = "Activation Required";
else
m_strAddapt98 = "Product Code Invalid";
m_strSA = "Purchase Required";
m_strViewer = "Purchase Required";
}
CWnd* pWnd = GetDlgItem(IDC_PRODUCTCODE);
if(bDisableEntry)
pWnd->EnableWindow(FALSE);
else
pWnd->EnableWindow(TRUE);
UpdateData(FALSE);
return TRUE;
}
void CProductCodeDlg::OnProductCodeEntry()
{
UpdateData(TRUE);
}
void CProductCodeDlg::OnOK()
{ UpdateData(TRUE);
CAddaptApp* pApp = (CAddaptApp*)AfxGetApp();
DWORD num = (m_dwProductCode & 0x02e0);
if( (m_dwProductCode == 0x02e0 && pApp->m_bBeta) ||
m_dwProductCode != m_dwInitialCode &&
m_dwProductCode >= ( (m_dwSerialNum + 1001000) & 0xfff1f) &&
m_dwProductCode <= ( ((m_dwSerialNum + 1001000) & 0xfff1f) + 225) )
{
CParameters::ProductCode(num);
pApp->SetAvailability();
if (pApp->m_bProductCodeFound)
m_strAddapt98 = "Activation Required";
if (pApp->m_bSA_Available)
m_strSA = "Available";
if (pApp->m_bViewer_Available)
m_strViewer = "Available";
UpdateData(FALSE);
}
}
void CProductCodeDlg::OnDone()
{
UpdateData(TRUE);
DWORD num = (m_dwProductCode & 0x02e0);
if( (m_dwProductCode == 0x02e0 ) ||
m_dwProductCode != m_dwInitialCode &&
m_dwProductCode >= ( (m_dwSerialNum + 1001000) & 0xfff1f) &&
m_dwProductCode <= ( ((m_dwSerialNum + 1001000) & 0xfff1f) + 225) )
{
CParameters::ProductCode(num);
((CAddaptApp*)AfxGetApp())->SetAvailability();
}
CDialog::OnOK();
}
void CProductCodeDlg::OnCancel()
{
CDialog::OnCancel();
}