1、初始化函数中:
CRegKey reg,reg2;
DWORD dValue;
CString str;
extern BOOL flag;
LPCTSTR lp="Software\\num\\";
if(reg.Open(HKEY_CURRENT_USER,lp)==ERROR_SUCCESS && reg.QueryValue(dValue,"sum")==ERROR_SUCCESS)//打开注册表
{
;
}
else
{
reg.Create(HKEY_CURRENT_USER,"Software");
reg.Create(reg.m_hKey,"num");
reg.SetValue(10,"sum");
}
if(reg2.Open(HKEY_CURRENT_USER,lp)==ERROR_SUCCESS)
{
if(reg2.QueryValue(dValue,"sum")==ERROR_SUCCESS)
{
str.Format("此软件限制使用次数为10次,剩余次数为:%d",dValue);
SetDlgItemText(IDC_STATIC,str);
reg.SetValue(dValue-1,"sum");
if(dValue>10)
{
flag=false;
}
else
{
flag=true;
}
}
else
{
SetDlgItemText(IDC_STATIC,"注册表查询错误!");
}
}
else
{
SetDlgItemText(IDC_STATIC,"注册表打开错误!");
}
reg.Close();
reg2.Close();
//本程序能否使用
if(!flag)
{
AfxMessageBox("使用次数到限");
CDialog::OnOK();
}