QT5下获取本机IP地址、计算机名、网络连接名、MAC地址、子网掩码、广播地址
2016-01-06 22:10
811 查看
获取主机名称
/* * 名称:get_localmachine_name * 功能:获取本机机器名称 * 参数:no * 返回:QString */ QString CafesClient::get_localmachine_name() { QString machineName = QHostInfo::localHostName(); return machineName; }
1
2
3
4
5
6
7
8
9
10
11
获取本机IP地址
/* * 名称:get_localmachine_ip * 功能:获取本机的IP地址 * 参数:no * 返回:QString */ QString CafesClient::get_localmachine_ip() { QString ipAddress; QList<QHostAddress> 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; }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
获取本机网络连接名、MAC地址
/* * 名称:get_localmachine_mac * 功能:获取本机的MAC地址 * 参数:no * 返回:void */ QString CafesClient::get_localmachine_mac() { QList<QNetworkInterface> nets = QNetworkInterface::allInterfaces(); int i = 0; foreach(QNetworkInterface ni,nets) { i++; qDebug()<<i<<ni.name()<<ni.hardwareAddress()<<ni.humanReadableName(); } }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
获取本机子网掩码、广播地址
//在上个函数的环境下 QList<QNetworkAddressEntry> entryList =interface.addressEntries(); //获取IP地址条目列表,每个条目中包含一个IP地址,一个子网掩码和一个广播地址 foreach(QNetworkAddressEntry entry,entryList) { //遍历每一个IP地址条目 qDebug()<<”IP Address: “<<entry.ip().toString(); //IP地址 qDebug()<<”Netmask: “<<entry.netmask().toString(); //子网掩码 qDebug()<<”Broadcast: “<<entry.broadcast().toString(); //广播地址 }
http://blog.csdn.net/u013007900/article/details/50444459[/code]
相关文章推荐
- 关于fedora14更换主板后或ghost系统后网络无法连接的解决办法
- HTTP Authorization
- 网络编程2
- nginx 1.9 支持http2 协议
- Android网络开发框架Retrofit(四:扩展篇,Retrofit+RxJava)
- Https工具类
- java基础知识——网络编程、IO流
- java基础知识——网络编程、IO流
- java基础知识——网络编程、IO流
- 网络 tcp 标志位 / 字段
- Android网络开发框架Retrofit(三:进阶篇,接口实体类封装)
- TCP三次握手和四次挥手状态变迁解析
- webrtc rtcp mux及其对 传统voip的影响
- 获取网络状态,区分2G3G4GWIFI等,非reachability
- iOS NSURLSession网络请求(get/post/下载)
- HTTP协议的报文结构
- PXE网络装机
- 【转】神经网络编程入门
- Caffe学习系列(18): 绘制网络模型
- HttpClient用HttpPost传输中文字符串乱码