Qt获取IP地址、用户名、机器名、MAC地址

获取ip地址

 

[cpp] view plaincopy

  1. // 获得ip地址  QString USBMainUI::getIpAdress() 
     {      
        QString localIPAddress = "";       
        QList<QHostAddress>listAddress = QNetworkInterface::allAddresses();       
        for(int j = 0; j < listAddress.size(); j++)
        {           
            if(!listAddress.at(j).isNull() &&listAddress.at(j).protocol() ==  QAbstractSocket::IPv4Protocol&& listAddress.at(j) != QHostAddress::LocalHost)            
            {              
                  localIPAddress = listAddress.at(j).toString();               
                  return localIPAddress;           
            }       
        }           
        return localIPAddress;  
    }  

     


获取用户名

 

 

[cpp] view plaincopy

  1. // 获得用户名  QString USBMainUI::getUserName()  
    {      
        QString userName = QDesktopServices::storageLocation(QDesktopServices::HomeLocation);      
        userName = userName.section("/", -1, -1);     
         return userName;  
    }  

     

 

 

获取机器名字

 

[cpp] view plaincopy

// 获得机器名字  QString USBMainUI::getMachineName()  
{      
    QString localHostName = QHostInfo::localHostName();      
    return localHostName;  
}  

 


获取MAC地址

  1. // 获得MAC地址  
    QString USBMainUI::getMACAdress()  
    {  
        QList<QNetworkInterface>  NetList;    //网卡链表  
        int NetCount = 0;           //网卡个数  
        int Neti = 0;  
        QNetworkInterface thisNet;      //所要使用的网卡  
        NetList = QNetworkInterface::allInterfaces();//获取所有网卡信息  
        NetCount = NetList.count();         //统计网卡个数  
        for(Neti = 0;Neti < NetCount; Neti++){   //遍历所有网卡  
                if(NetList[Neti].isValid()){    //判断该网卡是否是合法  
                        thisNet = NetList[Neti];    //将该网卡置为当前网卡  
                    break;  
                }  
        }  
        return ( thisNet.hardwareAddress() );   //获取该网卡的MAC  
    } 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值