程序代码清单.docx
- 文档编号:30039424
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:28
- 大小:180.13KB
程序代码清单.docx
《程序代码清单.docx》由会员分享,可在线阅读,更多相关《程序代码清单.docx(28页珍藏版)》请在冰豆网上搜索。
程序代码清单
一、客户端程序清单:
图1.1客户端登陆界面
1.客户端用户上机代码:
voidCClientDlg:
:
OnCardButtonTurnOn()
{
UpdateData(true);
this->m_CardID.TrimLeft();
this->m_CardID.TrimRight();
this->m_CardPassWord.TrimLeft();
this->m_CardPassWord.TrimRight();
if(!
(m_CardID==""||m_CardPassWord==""||m_CardPassWord.GetLength()<5))
{
//撤消钩子函数
:
:
UnhookWindowsHookEx(glhHook);
SMessagepMsg;
if(!
IsWIN32_NT())
{
DWORDlength=256;
char*strName=newchar[length];
GetComputerName(strName,&length);
strcpy(pMsg.msg,strName);
}
else
gethostname(pMsg.msg,255);
strcpy(pMsg.cardID,this->m_CardID);
strcpy(pMsg.cardPass,EncryptText(this->m_CardPassWord));
strLeaguerCard=this->m_CardID;
this->m_CardID.Empty();
this->m_CardPassWord.Empty();
UpdateData(false);
this->m_CtrlCardNum.SetFocus();
pMsg.code=CLIENT_CARD_PASS;
m_commSocket.Send(&pMsg,sizeof(SMessage));
}
else
AfxMessageBox("会员卡号或密码不能为空!
");
}
2.管理员解锁上网代码:
voidCClientDlg:
:
OnAdminButtonUnlock()
{
UpdateData(true);
m_AdminPassWord.TrimRight();
m_AdminPassWord.TrimLeft();
if(m_AdminPassWord=="")return;
SMessagepMsg;
if(!
IsWIN32_NT())
{
DWORDlength=256;
char*strName=newchar[length];
GetComputerName(strName,&length);
strcpy(pMsg.msg,strName);
}
else
gethostname(pMsg.msg,255);
strcpy(pMsg.cardID,"");
strcpy(pMsg.cardPass,this->m_AdminPassWord);
pMsg.code=CLIENT_ADMIN_PASS;
m_commSocket.Send(&pMsg,sizeof(SMessage));
this->m_AdminPassWord.Empty();
GetDlgItem(IDC_EDIT_ADMIN_PWD)->SetFocus();
UpdateData(false);
}
3.客户端接收消息代码:
图1.2客户端收到消息界面
客户端接收服务器发送的信息代码:
LRESULTCClientDlg:
:
OnAcceptServerAddr(WPARAMwParam,LPARAMlParam)
{
SMessage*pMsg=(SMessage*)lParam;
CFileStatusfilestatus;
strServerIp=CString(pMsg->msg);
intLength=strServerIp.GetLength();
SMessagem_Msg;
if(!
IsWIN32_NT())
{
DWORDlength=256;
char*strName=newchar[length];
GetComputerName(strName,&length);
strcpy(m_Msg.msg,strName);
}
else
gethostname(m_Msg.msg,255);
CFileSFile("ServerIp.txt",CFile:
:
modeCreate);
SFile.Close();
CFileDFile("ServerIp.txt",CFile:
:
modeWrite);
DFile.Write(strServerIp,Length);
DFile.Close();
m_commSocket.Close();
m_commSocket.Create();
m_commSocket.Connect(strServerIp,6810);
m_Msg.code=CLIENT_IP_SEND;
m_commSocket.Send(&m_Msg,sizeof(SMessage));
returnTRUE;
}
二、服务器端程序清单
1.初始化主页面代码:
图1.3服务端主界面
BOOLCMainFrame:
:
CreateToolBar()
{
CImageListImageList;
char*ImageText[]={"结账","锁定","解锁","重启","关机","商品出售","锁定桌面","会员管理","计费统计"};
UINTImageID[]={IDM_CHECK_OUT,IDM_LOCKING,IDM_UNLOCK,IDM_RESET,IDM_SHUTDOWN,IDM_SALE_FOOD,IDM_LOCK_DESKWINDOW,ID_MANAGE_LEAGUER,ID_FREE_RECORD};
if(!
m_wndToolBar.CreateEx(this))
{
TRACE0("Failedtocreatetoolbar\n");
return-1;
}
if(!
m_wndReBar.Create(this))
{
TRACE0("Failedtocreaterebar\n");
return-1;
}
m_wndToolBar.GetToolBarCtrl().SetButtonWidth(80,80);
ImageList.Create(IDB_TOOLBAR_HOT,32,0,RGB(255,255,255));
m_wndToolBar.GetToolBarCtrl().SetImageList(&ImageList);
ImageList.Detach();
m_wndToolBar.SetButtons(NULL,9);
for(inti=0;i<9;i++)
{
m_wndToolBar.SetButtonInfo(i,ImageID[i],TBSTYLE_BUTTON,i);
m_wndToolBar.SetButtonText(i,ImageText[i]);
}
CRectrectToolBar;
m_wndToolBar.GetItemRect(0,&rectToolBar);
m_wndToolBar.SetSizes(rectToolBar.Size(),CSize(32,1));
m_wndToolBar.SetBarStyle(m_wndToolBar.GetBarStyle()|CBRS_ALIGN_TOP|CBRS_TOOLTIPS|CBRS_FLYBY|CBRS_SIZE_FIXED);
m_wndReBar.AddBar(&m_wndToolBar);
REBARBANDINFOrbbi;
rbbi.cbSize=sizeof(rbbi);
rbbi.fMask=RBBIM_CHILDSIZE|RBBIM_IDEALSIZE|RBBIM_SIZE|RBBIM_STYLE;
rbbi.cxMinChild=rectToolBar.Width();
rbbi.cyMinChild=rectToolBar.Height();
rbbi.cx=rbbi.cxIdeal=rectToolBar.Width()*7;
rbbi.fStyle=RBBS_FIXEDSIZE|RBBS_FIXEDBMP;
m_wndReBar.GetReBarCtrl().SetBandInfo(0,&rbbi);
EnableDocking(CBRS_ALIGN_ANY);
return0;
}
2.增加新的用户代码:
图1.4增加会员界面
voidCLeaguerManageDlg:
:
OnAddLeaguer()
{
CAddLeaguerDlgdlg;
dlg.bAddLeaguer=true;
if(dlg.DoModal()==IDOK)
{
intnCount=m_CtrlList.GetItemCount();
m_CtrlList.InsertItem(nCount,dlg.m_strNick);
m_CtrlList.SetItemText(nCount,2,dlg.m_strMoney);
CTimetime;
time=CTime:
:
GetCurrentTime();
CStringstr;
str.Format("%4d-%2d-%2d",time.GetYear(),time.GetMonth(),time.GetDay());
m_CtrlList.SetItemText(nCount,5,str);
m_CtrlList.SetItemText(nCount,3,0);
m_CtrlList.SetItemText(nCount,6,str);
}
}
3.用户账户充值代码:
图1.5用户充值界面
voidCLeaguerManageDlg:
:
OnAddFree()
{
CAddFreeDlgdlg;
POSITIONpos=m_CtrlList.GetFirstSelectedItemPosition();
if(pos==NULL)
{
AfxMessageBox("请选择要充值的会员!
",MB_ICONINFORMATION|MB_OK);
return;
}
CDaoLeaguerm_daoLeaguer;
m_daoLeaguer.Open();
while(pos)
{
intnIndex=m_CtrlList.GetNextSelectedItem(pos);
CStringstr=m_CtrlList.GetItemText(nIndex,0);
dlg.strCaption=str;
if(dlg.DoModal()==IDOK)
{
CStringstrFilter("[用户名称]=\"");
strFilter+=str;
strFilter+='\"';
if(m_daoLeaguer.FindFirst(strFilter))
{
m_daoLeaguer.Edit();
m_daoLeaguer.m_fMoney+=(float)atof(dlg.m_strAddFree);
m_daoLeaguer.Update();
}
CStringstr;
str.Format("%.1f",m_daoLeaguer.m_fMoney);
m_CtrlList.SetItemText(nIndex,2,str);
}
}
}
4.修改用户信息代码:
图1.6修改用户信息界面
voidCLeaguerManageDlg:
:
OnModifyLeaguer()
{
CAddLeaguerDlgdlg;
POSITIONpos=m_CtrlList.GetFirstSelectedItemPosition();
if(pos==NULL)
{
AfxMessageBox("请选择要修改的会员!
",MB_ICONINFORMATION|MB_OK);
return;
}
while(pos)
{
intnIndex=m_CtrlList.GetNextSelectedItem(pos);
CStringstr=m_CtrlList.GetItemText(nIndex,0);
dlg.bAddLeaguer=false;
CDaoLeaguerm_daoLeaguer;
m_daoLeaguer.Open();
CStringstrFilter("[用户名称]=\"");
strFilter+=str;
strFilter+='\"';
if(m_daoLeaguer.FindFirst(strFilter))
{
dlg.m_strNick=m_daoLeaguer.m_strNick;
dlg.m_strPassword="";
dlg.m_strConfirmPassword="";
CStringstr;
switch(m_daoLeaguer.m_lStatus)
{
caseNORMAL_STATUS:
str.LoadString(IDS_LEAGUER_NORMAL);
break;
casePAUSE_STATUS:
str.LoadString(IDS_LEAGUER_PAUSE);
break;
caseLOSS_STATUS:
str.LoadString(IDS_LEAGUER_LOSS);
break;
}
dlg.m_strStatus=str;
dlg.m_strName=m_daoLeaguer.m_strName;
dlg.m_strCardType=m_daoLeaguer.m_strCardType;
dlg.m_strCarNum=m_daoLeaguer.m_strCardNum;
dlg.m_strCompany=m_daoLeaguer.m_strCompanyName;
dlg.m_strAddress=m_daoLeaguer.m_strAddress;
dlg.m_strBak=m_daoLeaguer.m_strBak;
dlg.startTime=CTime(m_daoLeaguer.m_StartDate.GetYear(),m_daoLeaguer.m_StartDate.GetMonth(),m_daoLeaguer.m_StartDate.GetDay(),12,12,12);
dlg.endTime=CTime(m_daoLeaguer.m_EndDate.GetYear(),m_daoLeaguer.m_EndDate.GetMonth(),m_daoLeaguer.m_EndDate.GetDay(),12,12,12);
m_daoLeaguer.Close();
dlg.DoModal();
}
}
}
5.查找用户信息代码:
图1.7查找用户界面
voidCLeaguerManageDlg:
:
OnSearchButton()
{
CDaoLeaguerm_daoLeaguer;
m_daoLeaguer.Open();
UpdateData(true);
m_strSearchName.TrimLeft();
m_strSearchName.TrimRight();
CStringstr;
if(!
(m_daoLeaguer.IsBOF()&&m_daoLeaguer.IsEOF())&&m_strSearchName=="")
{
m_CtrlList.DeleteAllItems();
m_daoLeaguer.MoveLast();
intnCount=m_daoLeaguer.GetRecordCount();
m_daoLeaguer.MoveFirst();
for(inti=0;i { switch(m_daoLeaguer.m_lStatus) { caseNORMAL_STATUS: str.LoadString(IDS_LEAGUER_NORMAL); break; casePAUSE_STATUS: str.LoadString(IDS_LEAGUER_PAUSE); break; caseLOSS_STATUS: str.LoadString(IDS_LEAGUER_LOSS); break; } m_CtrlList.InsertItem(i,m_daoLeaguer.m_strNick); m_CtrlList.SetItemText(i,1,str); str.Format("%.1f",m_daoLeaguer.m_fMoney); m_CtrlList.SetItemText(i,2,str); str.Format("%.1f",m_daoLeaguer.m_fCountMoney); m_CtrlList.SetItemText(i,3,str); str=m_daoLeaguer.m_LastUseDate.Format(); m_CtrlList.SetItemText(i,4,str); m_CtrlList.SetItemText(i,5,m_daoLeaguer.m_StartDate.Format(VAR_DATEVALUEONLY)); m_CtrlList.SetItemText(i,6,m_daoLeaguer.m_EndDate.Format(VAR_DATEVALUEONLY)); str.Format("%d",m_daoLeaguer.m_lCountTimes); m_CtrlList.SetItemText(i,7,str); m_daoLeaguer.MoveNext(); } } else if(m_strSearchName=="") AfxMessageBox("暂时没有会员! ",MB_ICONINFORMATION|MB_OK); if(m_strSearchName! ="") { CStringstrFilter("[用户名称]=\""); strFilter+=m_strSearchName; strFilter+='\"'; m_CtrlList.DeleteAllItems(); if(m_daoLeaguer.FindFirst(strFilter)) { switch(m_daoLeaguer.m_lStatus) { caseNORMAL_STATUS: str.LoadString(IDS_LEAGUER_NORMAL); break; casePAUSE_STATUS: str.LoadString(IDS_LEAGUER_PAUSE); break; caseLOSS_STATUS: str.LoadString(IDS_LEAGUER_LOSS); break; } m_CtrlList.InsertItem(0,m_daoLeaguer.m_strNick); m_CtrlList.SetItemText(0,1,str); str.Format("%.1f",m_daoLeaguer.m_fMoney); m_CtrlList.SetItemText(0,2,str); str.Format("%.1f",m_daoLeaguer.m_fCountMoney); m_CtrlList.SetItemText(0,3,str); str=m_daoLeaguer.m_LastUseDate.Format(); m_CtrlList.SetItemText(0,4,str); m_CtrlList.SetItemText(0,5,m_daoLeaguer.m_StartDate.Format(VAR_DATEVALUEONLY)); m_CtrlList.SetItemText(0,6,m_daoLeaguer.m_EndDate.Format(VAR_DATEVALUEONLY)); str.Format("%d",m_daoLeaguer.m_lCountTimes); m_CtrlList.SetItemText(0,7,str); } else { AfxMessageBox("此会员不存在,请重新输入! ",MB_ICONINFORMATION|MB_OK); } } m_daoLeaguer.Close(); } 6.删除用户信息代码: 图1.8删除用户信息界面 voidCLeaguerManageDlg: : OnDeleteButton() { CDaoLeaguerm_daoLeaguer; m_daoLeaguer.Open
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序代码 清单