📄 _mblogin_resp.cpp
字号:
// _MBLOGIN_RESP.cpp: implementation of the C_MBLOGIN_RESP class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "_MBLOGIN_RESP.h"
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
EMSP2_0::C_MBLOGIN_RESP::C_MBLOGIN_RESP()
{
}
EMSP2_0::C_MBLOGIN_RESP::~C_MBLOGIN_RESP()
{
}
char* EMSP2_0::C_MBLOGIN_RESP::getBytes()
{
Utility::Zerochars(result,59);
result[0]=mb.Result;
result[1]=mb.ConnectType;
result[2]=mb.LoginType;
int cur=3;
int size=mb.Reserved1.size();
for(int i=0;i<size;i++)
{
result[cur]=mb.Reserved1[i];
cur++;
}
result[cur]=0;
cur++;
char sUserNo[4];
Utility::intTochars(mb.UserNO,sUserNo);
size=sizeof(sUserNo);
for (int i=0;i<size;i++)
{
result[cur]=sUserNo[i];
cur++;
}
size=mb.SessionID.size();
for(int i=0;i<size;i++)
{
result[cur]=mb.SessionID[i];
cur++;
}
result[cur]=0;
cur++;
size=mb.SessionKey.size();
for(int i=0;i<size;i++)
{
result[cur]=mb.SessionKey[i];
cur++;
}
result[cur]=0;
bsize=cur+1;
return result;
}
void EMSP2_0::C_MBLOGIN_RESP::TranFromchars(char chars[], int len, MB_LOGIN_RESP &mbv)
{
int size=len;
if(size>59)
{
size=59;
}
// Utility::fillchar(result,0);
mbv.Result=chars[0];
mbv.ConnectType=chars[1];
mbv.LoginType=chars[2];
mbv.Reserved1="";
int cur=3;
for(cur=3;(chars[cur]>0)&&(cur<size);cur++)
{
mbv.Reserved1+=chars[cur];
}
cur++;//Zero char
char ar[4];//int chars
for(int i=0;i<4;i++)
{
ar[i]=chars[cur];
cur++;
}
mbv.UserNO=Utility::charsToInt(ar);
mbv.SessionID="";
for(int i=cur;(chars[i]!=0)&&(i<size);i++)
{
mbv.SessionID+=chars[i];
cur++;
}
cur++;//Skip end '/0';
mbv.SessionKey="";
for(int i=cur;(chars[i]!=0)&&(i<size);i++)
{
mbv.SessionKey+=chars[i];
cur++;
}
}
EMSP2_0::C_MBLOGIN_RESP::C_MBLOGIN_RESP(MB_LOGIN_RESP& mbv)
{
mb.ConnectType=mbv.ConnectType;
mb.LoginType=mbv.LoginType;
mb.Reserved1=mbv.Reserved1;
mb.Result=mbv.Result;
mb.SessionID=mbv.SessionID;
mb.SessionKey=mbv.SessionKey;
mb.UserNO=mbv.UserNO;
}
/*EMSP2_0::C_MBLOGIN_RESP C_MBLOGIN_RESP::operator =(C_MBLOGIN_RESP &right)
{
ConnectType=right.ConnectType;
LoginType=right.LoginType;
Reserved1=right.Reserved1;
Result=right.Result;
SessionID=right.SessionID;
SessionKey=right.SessionKey;
UserNO=right.UserNO;
}
C_MBLOGIN_RESP EMSP2_0::C_MBLOGIN_RESP::operator =(char chars[])
{
int size=sizeof(chars);
TranFromchars(chars,size,*this);
return *this;
}
bool EMSP2_0::C_MBLOGIN_RESP::operator ==(C_MBLOGIN_RESP &right)
{
return ConnectType==right.ConnectType&&
LoginType==right.LoginType&&
Reserved1==right.Reserved1&&
Result==right.Result&&
SessionID==right.SessionID&&
SessionKey==right.SessionKey&&UserNO==right.UserNO;
}
bool EMSP2_0::C_MBLOGIN_RESP::operator !=(C_MBLOGIN_RESP &right)
{
return !(*this==right);
}*/
void EMSP2_0::C_MBLOGIN_RESP::TransFromchars(char *chars, int len)
{
TranFromchars(chars,len,mb);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -