QT怎么获取某个网络端口信号来源的IP地址,并可以在已有的数据库中搜索该IP地址含有的信息,用哪些语句?

2025-02-28 09:19:03
推荐回答(1个)
回答1:

1。QHostInfo类获取主机名和ip地址
(1)获取主机名: QHostInfo::localHostName()
QString localHostName=QHostInfo::localHostName();
(2)获取ip地址: QHostInfo info=QHostInfo::fromName(localHostName);//根据上边获得的主机名来获取本机的信息
info.addresses();//QHostInfo的address函数获取本机ip地址
如果存在多条ip地址ipv4和ipv6:
foreach(QHostAddress address,info.addresses())
{
if(address.protocol()==QAbstractSocket::IPv4P)//只取ipv4协议的地址
qDebug()<}
如果是ipv6地址,可以使用QAbstractSocket::ipv6Protocol来实现。
QHostAddress类是管理ip地址的类,所有的ip都归这个类管理。