📄 changepwddlg.cpp
字号:
// ChangePwdDlg.cpp : implementation file
//
#include "stdafx.h"
#include "client.h"
#include "ChangePwdDlg.h"
#include "winsock.h"
#include "afxsock.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern CString glbxuehao;
extern void glbshutdown();
/////////////////////////////////////////////////////////////////////////////
// CChangePwdDlg dialog
CChangePwdDlg::CChangePwdDlg(CWnd* pParent /*=NULL*/)
: CDialog(CChangePwdDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CChangePwdDlg)
newpassword = _T("");
newpassword2 = _T("");
password = _T("");
//}}AFX_DATA_INIT
}
void CChangePwdDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CChangePwdDlg)
DDX_Text(pDX, IDC_NEWPWD1, newpassword);
DDX_Text(pDX, IDC_NEWPWD2, newpassword2);
DDX_Text(pDX, IDC_PASSWORD, password);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CChangePwdDlg, CDialog)
//{{AFX_MSG_MAP(CChangePwdDlg)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CChangePwdDlg message handlers
void CChangePwdDlg::OnOK()
{ static l_counter=0;
l_counter++;
if(l_counter>=3)
{
glbshutdown();
}
UpdateData();
if(glbxuehao.IsEmpty()||password.IsEmpty()||newpassword.IsEmpty()||newpassword2.IsEmpty())
MessageBox("请输入完整的信息!","提醒",MB_OK|MB_ICONINFORMATION);
else if(newpassword2!=newpassword)
MessageBox("你的新密码不一致!请核对","提醒",MB_OK|MB_ICONINFORMATION);
else
{
SOCKET sockClient=socket(AF_INET,SOCK_STREAM,0);
SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");
addrSrv.sin_family =AF_INET;
addrSrv.sin_port=htons(6000);
CString str;
str +="4";
str += char(glbxuehao.GetLength());
str += glbxuehao;
str += char(password.GetLength());
str += password;
str +=char(newpassword.GetLength());
str +=newpassword;
str += char(0);
char* buf = str.GetBuffer(0);
int ret = 0;
int error = 0;
ret = connect(sockClient,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));
if(ret == SOCKET_ERROR){
error = WSAGetLastError();
if(error == 10061)
MessageBox(("服务器遇到错误,请稍后重试"),("错误"),MB_ICONERROR | MB_OK);
return ;
}
ret = send(sockClient, buf, str.GetLength(), 0);
if(ret != str.GetLength()){
MessageBox(("服务器遇到错误,请稍后重试"),("错误"),MB_ICONERROR | MB_OK);
return ;
}
char buff[10];
ret = recv(sockClient, buff, 10, 0);
if(ret == 0){
TRACE("Recv data error: %d\n", WSAGetLastError());
return ;
}
buff[ret] = '\0';
char tag=buff[0];
switch(tag)
{
case '5': MessageBox("修改密码成功!","提醒",MB_OK);l_counter=0;break;
case '6': MessageBox("对不起,您的密码修改未能成功!请到前台与管理员联系!","提醒",MB_OK);break;
default: MessageBox("系统出现不可遇知的错误,请重新启动以解决此问题!","错误",MB_OK);
}
CDialog::OnOK();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -