程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> QT5下獲取本機IP地址、計算機名、網絡連接名、MAC地址、子網掩碼、廣播地址

QT5下獲取本機IP地址、計算機名、網絡連接名、MAC地址、子網掩碼、廣播地址

編輯:關於C語言

QT5下獲取本機IP地址、計算機名、網絡連接名、MAC地址、子網掩碼、廣播地址


獲取主機名稱

/*
 * 名稱:get_localmachine_name
 * 功能:獲取本機機器名稱
 * 參數:no
 * 返回:QString
 */
QString CafesClient::get_localmachine_name()
{
    QString machineName     = QHostInfo::localHostName();
    return machineName;
}

獲取本機IP地址

/*
 * 名稱:get_localmachine_ip
 * 功能:獲取本機的IP地址
 * 參數:no
 * 返回:QString
 */
QString CafesClient::get_localmachine_ip()
{
    QString ipAddress;
    QList ipAddressesList = QNetworkInterface::allAddresses();
    // use the first non-localhost IPv4 address
    for (int i = 0; i < ipAddressesList.size(); ++i) {
        if (ipAddressesList.at(i) != QHostAddress::LocalHost &&
            ipAddressesList.at(i).toIPv4Address()) {
            ipAddress = ipAddressesList.at(i).toString();
            break;
        }
    }
    // if we did not find one, use IPv4 localhost
    if (ipAddress.isEmpty())
        ipAddress = QHostAddress(QHostAddress::LocalHost).toString();
    return ipAddress;
}

獲取本機網絡連接名、MAC地址

/*
 * 名稱:get_localmachine_mac
 * 功能:獲取本機的MAC地址
 * 參數:no
 * 返回:void
 */
QString CafesClient::get_localmachine_mac()
{
    QList nets       = QNetworkInterface::allInterfaces();
    int i = 0;
    foreach(QNetworkInterface ni,nets)
    {
        i++;
        qDebug()<

獲取本機子網掩碼、廣播地址

//在上個函數的環境下
QList entryList =interface.addressEntries();
//獲取IP地址條目列表,每個條目中包含一個IP地址,一個子網掩碼和一個廣播地址
foreach(QNetworkAddressEntry entry,entryList)
{
    //遍歷每一個IP地址條目
qDebug()<<”IP Address:
            “<

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved