修正buffer里面的数据处理方式,以前那个清除之后指针丢失

This commit is contained in:
hm
2020-08-06 16:44:49 +08:00
parent ecb73699cd
commit 6db2b44969
10 changed files with 153 additions and 52 deletions
+12 -2
View File
@@ -53,6 +53,13 @@ int DLink::SendMessageTo1(quint8 ch, quint8 *msg, quint16 len)
{
foreach(Node node,clientSockets)
{
QString num;
for (int i = 0; i < len; ++i) {
num.append(QString::number(msg[i],16).toUpper());
num.append(" ");
}
qDebug() << num;
DLink::Clientsock->writeDatagram((const char *)msg, len,
node.addr, node.port);
qDebug() << "Client Send Msg";
@@ -199,7 +206,7 @@ void DLink::connectSignal(QVariant m_state,
else if(m_Type.toString() == "UDP")
{
//qDebug() << m_Type << m_Param1 << m_Param2 << m_Param4;
if(setupClient(QHostAddress(m_Param1.toString()),m_Param2.toString().toInt(),m_Param4.toString().toInt()))
if(setupClient(QHostAddress(m_Param1.toString()),m_Param2.toString().toInt(),QHostAddress(m_Param3.toString()),m_Param4.toString().toInt()))
{
emit PortConnected(true,m_usrName,m_Type,m_Param1,m_Param2,m_Param3,m_Param4,m_Param5);
}
@@ -227,7 +234,7 @@ void DLink::connectSignal(QVariant m_state,
bool DLink::setupClient(const QHostAddress &remote_addr, int remote_port, int local_port)
bool DLink::setupClient(const QHostAddress &local_addr,int local_port,const QHostAddress &remote_addr,int remote_port)
{
bool isSuccess = false;
Clientsock = new QUdpSocket(this);
@@ -299,6 +306,9 @@ void DLink::readPendingDatagramsClient(void)
Clientsock->readDatagram(datagram.data(), datagram.size());
mavlinknode->setbuff(SourceType::c_sock,datagram);
}
//qDebug() << "client recieve";
}