#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include"client_protocol.h"
#include"client_message.h"
#include"error.h"
#include"client_c2s.h"
#include"GMToolDlg.h"
#include"DialogLogin.h"
//static CPacketPop s_pop;
//static CPacketPush s_push;
//static char s_buff[CLIENT_MAX_SIZE];
CGMToolDlg* pGMToolDlg = NULL;
extern void ReleaseLinkMemory(link_struct* head);
extern void MessageBoxInt(int n);
int ClientC2S::Handler_X2C_USER_LOGIN(CWnd* pWnd,link_struct* listNode)
{
if(pWnd == NULL || listNode == NULL)
return ERR_INVALID;
char buf[8] = {0};
memcpy(buf,listNode->RecvBuf,8);
int type = *(int*)buf;
int pblen = *(int*)(buf+4);
if((type == X2C_USER_LOGIN) && (pblen ==8))
{
pWnd->ShowWindow(SW_HIDE);
pGMToolDlg = new CGMToolDlg();
pGMToolDlg->pLoginDlg = (CDialogLogin*)pWnd;
pGMToolDlg->Create(IDD_DIALOG_GMTOOL);
pGMToolDlg->ShowWindow(SW_SHOW);
pGMToolDlg->EnableWindow(true);
pGMToolDlg->SetFocus();
}
else
{
if(nMaxCount>=3)
{
MessageBox(0,"输错三次密码","用户登录",0);
pWnd->SendMessage(WM_CLOSE);
}
else
{
MessageBox(0,"用记名或密码输入不正确,请重试","用户登录",0);
}
}
return 0;
}
int ClientC2S::Handler_X2C_GM_QUERY_SERV_ID_LIST(CWnd* pWnd,link_struct* listNode)
{
if(pWnd == NULL || listNode == NULL)
return ERR_INVALID;
SendMessage(pWnd->m_hWnd,WM_REFRESH_SERVER_LIST,(WPARAM)listNode,0);}