小编men*_*kel的帖子

获取当前的QNetworkInterface并将其连接到Internet

我想让当前的网络接口处于活动状态并连接到互联网.

实际上,我可以检查网络是否正常运行,以及是否不是环回网络.

  foreach(QNetworkInterface interface, QNetworkInterface::allInterfaces())
    {
        if (interface.flags().testFlag(QNetworkInterface::IsUp) && !interface.flags().testFlag(QNetworkInterface::IsLoopBack))
            foreach (QNetworkAddressEntry entry, interface.addressEntries())
            {
            if ( interface.hardwareAddress() != "00:00:00:00:00:00" && entry.ip().toString().contains("."))
                items << interface.name() + " "+ entry.ip().toString() +" " + interface.hardwareAddress();
        }
Run Code Online (Sandbox Code Playgroud)

结果:

"en1 3.3.3.52 D4:9A:20:61:1F:72" 
"vmnet1 192.168.169.1 00:50:56:C0:00:01" 
"vmnet8 192.168.210.1 00:50:56:C0:00:08"
Run Code Online (Sandbox Code Playgroud)

实际上它可以工作,但我发现了VM接口.我只想选择WLAN接口和以太网接口.

c++ qt network-interface

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×1

network-interface ×1

qt ×1