QList<QHostAddress> NetList = QNetworkInterface::allAddresses(); //取得全部信息
for(int Neti = 0;Neti < NetList.count(); Neti++)
{
if(QAbstractSocket::IPv4Protocol==NetList.at(Neti).protocol())//找ip4协议的
{
ip=NetList.at(Neti).toString();//如果没有其他ip地址 127.0.0.1也要
if(NetList.at(Neti).toString() != "127.0.0.1")
break;
}
}
if(ip.length()<1){
QMessageBox::information(this,"失败","得不到本机ip地址不能发送消息!");
return;
}
udpSocket = new QUdpSocket(this);
udp=udpSocket->bind(receiveport);
if(!udp)
{
QMessageBox::information(this,"失败","本机绑定2006udp端口失败!");
return;
}
connect(udpSocket, SIGNAL(readyRead()),this, SLOT(dataReceived()));
connect(udpSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(error(QAbstractSocket::SocketError)));
void DialogCheck::error(QAbstractSocket::SocketError err){qDebug() << err << "==" << this->udpSocket->errorString();}