⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 opcode.h

📁 一个与金融方面有关的问题
💻 H
字号:
/**********************************************************
定义通信封包协议
作者:颜永华
***********************************************************/
#ifndef _OPCODE_H
#define _OPCODE_H

typedef WORD	OPCODE;
#define _OPCODE(BUFF)			(*((OPCODE *)BUFF))
#define _PACKET_LEN(BUFF)		(*((WORD *)(BUFF+2)))
///////////////////////////////////////////////////////////////
//客户端封包定义
typedef struct _firstRegPacket	//首次注册
{
	OPCODE		wCode;
#define CLIENT_FIRST_REG	0X0B01
	WORD		wLen;
	char		customerName[11];
	char		customerPwd[17];
	char		accountId[19];
	char		accountPwd[17];
	char		customerRealName[11];
	char		customerRegBankIP[17];
	char		customerPhone[16];
	char		customerAddr[21];
	char		customerEmail[21];
}FIRST_REG_PACKET,*LPFIRST_REG_PACKET;
typedef struct _loginPacket		//登陆
{
	OPCODE		wCode;
#define CLIENT_LOGIN		0X0B02
	WORD		wLen;
	char customerName[11];
	char customerPwd[17];
	char customer_login_ip[17];
}LOGIN_PACKET,*LPLOGIN_PACKET;
typedef struct _inmoneyPacket	//存款
{
	OPCODE		wCode;
#define CLIENT_INMONEY		0X1B04
	WORD		wLen;
	char accountId[19];
	char accountPwd[17];
	char moneyNum[10];
	char opBankIP[17];
}INMONEY_PACKET,*LPINMONEY_PACKET;
typedef struct _outmoneyPacket	//取款
{
	OPCODE		wCode;
#define CLIENT_OUTMONEY		0X1B05
	WORD		wLen;
	char accountId[19];
	char accountPwd[17];
	char moneyNum[10];
	char opBankIP[17];
}OUTMONEY_PACKET,*LPOUTMONEY_PACKET;
typedef struct _transferPacket	//转帐
{
	OPCODE		wCode;
#define CLIENT_TRANSFER		0X1B06
	WORD		wLen;
	char accountId[19];
	char accountPwd[17];
	char moneyNum[10];
	char opBankIP[17];
	char inAccountId[19];
}TRANSFER_MONEY_PACKET,*LPTRANSFER_MONEY_PACKET;
typedef struct _findReq //查询余额请求
{
	OPCODE		wCode;
#define CLIENT_FIND_REQ		0X1B18
	WORD		wLen;
	char		accountId[19];
	char		accountPwd[17];
}FIND_BALANCE_REQ,*LPFIND_BALANCE_REQ;
typedef struct _exitpacket		//退出
{
	OPCODE		wCode;
#define	CLIENT_EXIT	0X0E00
	WORD		wLen;
	char		customerName[11];
}EXIT_PACKET,*LPEXIT_PACKET;
typedef struct _reqshow//登陆成功请求显示
{
	OPCODE		wCode;
#define CLIENT_SHOW_INFO	0X0B03
	WORD		wLen;
	char		customerName[11];
}REQSHOW,*LPREQSHOW_PACKET;
typedef struct _notifyPassword //修改密码
{
	OPCODE		wCode;
#define CLIENT_NOTIFY_PASSWORD	0X0C04
	WORD		wLen;
	char		accountId[19];
	char		accountOldPwd[17];
	char		accountNewPwd[17];
}NOTIFY_PASSWORD_PACKET,*LPNOTIFY_PASSWORD_PACKET;
////////////////////////////////////////////////////////
//服务器返回封包定义
typedef struct showinfopacket	//登陆成功显示
{
	OPCODE		wCode;
#define SERVER_SHOW_INFO	0X0A03
//#define CLIENT_SHOW_INFO	0X0B03
	WORD		wLen;
	char	RealName[11];
	char	Phone[16];
	char	Addr[21];
	char	Email[21];
	int		nScore;
	int		nGrade;
	char	RegBankIP[17];
}SHOW_INFO_PACKET,*LPSHOW_INFO_PACKET;
typedef struct _findPacket // 查询余额封包
{
	OPCODE		wCode;
#define SERVER_FIND		0X1A1B
	WORD		wLen;
	char		accountId[19];
	char		cBalance[11];
}FIND_PACKET,*LPFIND_PACKET;

typedef struct _RetFlagPacket  //各种操作状态的返回信息
{
	OPCODE		wCode;
#define SERVER_FIRST_REG	0X0A01
#define	SERVER_LOGIN		0X0A02
#define SERVER_SHOW_INFO	0X0A03
#define	SERVER_INMONEY		0X0A04
#define	SERVER_OUTMONEY		0X0A05
#define SERVER_TRANSFER		0X0A06
#define SERVER_FIND_ERR		0X0A0E
#define SERVER_NOTIFY_PASSWORD 0X0A0D
	WORD		wLen;
	BYTE		bFlag;
#define FLAG_SUCCEED	0X11	//成功
#define FLAG_FAILED		0X00	//失败
#define FLAG_NOBANK		0X01	//没有银行
#define FLAG_YESUSER	0X02	//已经有用户名
#define FLAG_YESACC		0X04	//已经有帐号
#define FLAG_ACCPWD_ERR 0X05	//帐号密码错误
#define FLAG_MONEY_ERR	0X06	//余额不足
}RETFLAG,*LPRETFLAG;
///////////////////////////////////////////////////
//客户端状态管理
typedef struct _clientStatus
{
	char		cUserName[11];
}CLIENT_STATUS,*LPCLIENT_STATUS;
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -