Qt5、C++11 获取wifi列表与wifi连接

一、获取wifi列表

.h 文件内容

cpp 复制代码
#include <QWidget>
#include <QVBoxLayout>
#include <QPushButton>
#include <QCheckBox>
#include <QListWidget>


class Setting : public QWidget {

Q_OBJECT
public:
    explicit Setting(QWidget *parent = nullptr);

signals:
private slots:
    void scanWifiList();

private:

};

#endif //WIFIUDPSCANTOTAL_SETTING_H

.cpp 文件

cpp 复制代码
//
// Created by Administrator on 2025/5/20.
//
#include <QLineEdit>
#include <QLabel>
#include "include/setting/Setting.h"
#include "include/configManager/ConfigManager.h"
#include "include/wifiManager/wifiManager.h"
#include <QDebug>
#include <QMap>
#include <QJsonObject>
#include <QListWidget>
#include <QMessageBox>
#include <QProcess>

#define COUT qDebug() << __FUNCTION__ << __LINE__


void Setting::scanWifiList() {
    qInfo() << "开始扫描wifi列表...";
    wifiList->clear();

    QProcess process;
    process.start("netsh wlan show networks");  // 执行WiFi扫描命令:ml-citation{ref="1,4" data="citationList"}
    process.waitForFinished();
    QString output = QString::fromLocal8Bit(process.readAllStandardOutput());

    QStringList lines = output.split("\r\n");
        foreach (QString line, lines) {
            if (line.contains("SSID")) {

                QString ssid = line.split(":").last().trimmed();
                qInfo() << "wifi..name.."<< ssid;

                wifiList->addItem(ssid);
            }
        }

    COUT << "扫描结束,wifi数量:" << wifiList->count();
    COUT << wifiList;

}

结果如下:

二、连接wifi

.h 文件

相关推荐
孙启超4 小时前
【AI开发之Rust】第 1 课:认识 Rust 与开发环境 —— 装好工具链,跑通第一个程序
开发语言·人工智能·后端·ai·rust·安全架构
君顾14 小时前
家政派单小程序源码开发实战:从零搭建到上线全流程指南
java·开发语言·家政派单
我是唐青枫5 小时前
C#.NET PInvoke 深入解析:封送、内存布局与原生互操作实战
开发语言·c#·.net
程序猿编码5 小时前
纯C++轻量计算机视觉推理引擎:基于GGML的端侧CV模型部署技术全解析
开发语言·c++·计算机视觉·大模型·transformer
SEO_juper6 小时前
外贸多语言站最隐蔽的流量杀手:hreflang 错了,谷歌把德语页推给美国人(附审计脚本)
开发语言·前端·python·seo·独立站·谷歌优化
geovindu6 小时前
CSharp: Strategy Pattern
开发语言·后端·c#·.net·.netcore·策略模式·行为模式
Tairitsu_H6 小时前
[C++] C++11新增构造:列表初始化和std::initializer_list
开发语言·c++·c++11·构造
宣宣猪的小花园.6 小时前
【嵌入式】故障与降级:看门狗、保护机制和工程可靠性的底线
开发语言·人工智能·嵌入式硬件·机器学习
shmily麻瓜小菜鸡6 小时前
JS/TS 易踩坑知识点 — 自动分号插入(ASI)
开发语言·javascript·ecmascript
CoderYanger7 小时前
前端基础——JavaScript(WebAPI)代码案例
java·开发语言·前端·javascript·css·前端框架·html5