18,356
社区成员
发帖
与我相关
我的任务
分享
//CMS流水
typedef struct _CMSWaste
{
TDevInfo DevInfo;
char Content[1024];
int Light;
char Remark1[20];
char Remark2[20];
}TCMSWaste;
TCMSWaste cmswaste;
memset(&cmswaste, 0, sizeof(TCMSWaste));
int retcms = m_peer[i]->ReadData((char*)&cmswaste, sizeof(TCMSWaste));
if (retcms < 0)
{
//读取CMS包错误
//ErrorReport("读取CMS包错误");
ReleaseCritical();
continue;
}
else if (retcms == 0)
{
ReleaseCritical();
continue;
}
ErrorReport("收到(IP:%s)发送的CMS数据", ip);
if ((m_DbOper.HandleCMSMsg(cmswaste))&&(m_DbOper.HandleCMSErrorMsg(cmswaste)))
{
ErrorReport("处理CMSMsg成功");
//返回成功信息
m_peer[i]->SendData("OKOK", 4);
}
else
{
ErrorReport("处理CMSMsg失败");
m_peer[i]->SendData("ERRO", 4);
//断开连接
m_peer[i]->FreePeer();
}
BOOL CPRJ_DbOperate::HandleCMSMsg(TCMSWaste &cms)
{
ErrorReport("HandleCMSMsg");
char DevCode[10];
memset(DevCode, 0, sizeof(cms.DevInfo.DevCode));
memcpy(DevCode, cms.DevInfo.DevCode, sizeof(cms.DevInfo.DevCode));
ErrorReport("DevCode:%s", DevCode);
typedef struct _DevInfo
{
BYTE DevType;
char DevCode[10];
char CheckTime[14];
char ErrorStatus[20];
int CheckError;
}TDevInfo;
BOOL CPRJ_DbOperate::HandleCMSMsg(TCMSWaste &cms)
{
ErrorReport("HandleCMSMsg");
char DevCode[10];
memset(DevCode, 0, sizeof(cms.DevInfo.DevCode));
memcpy(DevCode, cms.DevInfo.DevCode, sizeof(cms.DevInfo.DevCode));
ErrorReport("DevCode:%s", DevCode); //此处不应该只显示这10位的内容吗?为啥后面的也显示出来了
}