本文整理汇总了C++中CInterface::SMT_GetAllDeviceInfo方法的典型用法代码示例。如果您正苦于以下问题:C++ CInterface::SMT_GetAllDeviceInfo方法的具体用法?C++ CInterface::SMT_GetAllDeviceInfo怎么用?C++ CInterface::SMT_GetAllDeviceInfo使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CInterface
的用法示例。
在下文中一共展示了CInterface::SMT_GetAllDeviceInfo方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GetDevicePara
bool CSmartCommunicationDlg::GetDevicePara()
{
bool bFlag=false;
char tmp[128];
int i=0,j=0;
int nLinkcount=0,ntotal=0;
SMARTPOS cpara;
SMARTPOS cPos;
CSocketSmart SocketSmart;
memset(tmp, 0,sizeof tmp);
memset(&cPos, 0,sizeof cPos);
memset(&cpara,0,sizeof cpara);
g_VLinkIP.clear();
//获取所有的设备
if( !g_CInterface.SMT_GetAllDeviceInfo() ) return false;
int nCount=g_VSmartPos.size();
nLinkcount=0;
for( i=0; i<nCount; i++ )
{
memset(&cpara,0,sizeof cpara);
if(m_Data.HexToInt(g_VSmartPos[i].ucServerDeviceID,4)) continue; //若上级设备ID不为空,则为子设备
memcpy(&cpara,&g_VSmartPos[i],sizeof(cpara));
g_VLinkIP.push_back(cpara);
}
if( !(nLinkcount=g_VLinkIP.size()) ) return false; //没有链路设备
for( j=0; j<nLinkcount; j++ )
{
SocketSmart.m_nTotalPos =0;
SocketSmart.m_nPortTotal=0;
SocketSmart.m_nPortTotal=g_VLinkIP[j].nServerPortTotal; //服务器端口总数
strcpy(SocketSmart.m_IpPar.cIPAddress,g_VLinkIP[j].cIP); //IP
SocketSmart.m_IpPar.nPortNo=g_VLinkIP[j].nPort; //端口
memcpy(SocketSmart.m_IDNo,g_VLinkIP[j].ucpIDNo,4); //ID号
memcpy(SocketSmart.m_regno,g_VLinkIP[j].ucRegNo,4); //注册号
SocketSmart.m_MacNum=g_VLinkIP[j].ucMacNo; //机号
memcpy(SocketSmart.m_MacCode,g_VLinkIP[j].ucpMachineCode,2);//机型代码
for( i=0; i<nCount; i++ )
{
if( !memcmp(g_VLinkIP[j].ucpIDNo,g_VSmartPos[i].ucServerDeviceID,4) )
{
memcpy(&SocketSmart.m_SmartPos[SocketSmart.m_nTotalPos++],&g_VSmartPos[i],sizeof(SMARTPOS));
ntotal=SocketSmart.m_nTotalPos;
}
}
if( !ntotal ) //没有子设备时,则为直连设备
{
memcpy(&SocketSmart.m_SmartPos[SocketSmart.m_nTotalPos++],&g_VLinkIP[j],sizeof(SMARTPOS));
SocketSmart.m_nPortTotal=SocketSmart.m_nTotalPos;
}
else if( !memcmp(g_VLinkIP[j].ucpMachineCode,MACHINE_TYPE_5302,2) ) //JLPORT
{
SocketSmart.m_nPortTotal=ntotal;
}
g_LTcpsmart.push_back(SocketSmart);
}
ShowDeviceInfo();
return true;
}