当前位置:   article > 正文

Qt 获取本机的IP地址、Mac地址_qt获取本机ip

qt获取本机ip

获取IP地址

  1. QString getHostIpAddress()
  2. {
  3. QString strIpAddress;
  4. QList<QHostAddress> ipAddressesList = QNetworkInterface::allAddresses();
  5. // 获取第一个本主机的IPv4地址
  6. int nListSize = ipAddressesList.size();
  7. for (int i = 0; i < nListSize; ++i)
  8. {
  9. if (ipAddressesList.at(i) != QHostAddress::LocalHost &&
  10. ipAddressesList.at(i).toIPv4Address()) {
  11. strIpAddress = ipAddressesList.at(i).toString();
  12. break;
  13. }
  14. }
  15. // 如果没有找到,则以本地IP地址为IP
  16. if (strIpAddress.isEmpty())
  17. strIpAddress = QHostAddress(QHostAddress::LocalHost).toString();
  18. return strIpAddress;
  19. }

获取Mac地址

  1. QString getHostMacAddress()
  2. {
  3. QList<QNetworkInterface> nets = QNetworkInterface::allInterfaces();// 获取所有网络接口列表
  4. int nCnt = nets.count();
  5. QString strMacAddr = "";
  6. for(int i = 0; i < nCnt; i ++)
  7. {
  8. // 如果此网络接口被激活并且正在运行并且不是回环地址,则就是我们需要找的Mac地址
  9. if(nets[i].flags().testFlag(QNetworkInterface::IsUp) && nets[i].flags().testFlag(QNetworkInterface::IsRunning) && !nets[i].flags().testFlag(QNetworkInterface::IsLoopBack))
  10. {
  11. strMacAddr = nets[i].hardwareAddress();
  12. break;
  13. }
  14. }
  15. return strMacAddr;
  16. }
需要添加头文件

  1. #include <QNetworkInterface>
  2. #include <QList>



声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/112659
推荐阅读
相关标签
  

闽ICP备14008679号