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

打印 上一主题 下一主题

主题 1757|帖子 1757|积分 5271

一、获取wifi列表
 


.h 文件内容
  1. #include <QWidget>
  2. #include <QVBoxLayout>
  3. #include <QPushButton>
  4. #include <QCheckBox>
  5. #include <QListWidget>
  6. class Setting : public QWidget {
  7. Q_OBJECT
  8. public:
  9.     explicit Setting(QWidget *parent = nullptr);
  10. signals:
  11. private slots:
  12.     void scanWifiList();
  13. private:
  14. };
  15. #endif //WIFIUDPSCANTOTAL_SETTING_H
复制代码
.cpp 文件
  1. //
  2. // Created by Administrator on 2025/5/20.
  3. //
  4. #include <QLineEdit>
  5. #include <QLabel>
  6. #include "include/setting/Setting.h"
  7. #include "include/configManager/ConfigManager.h"
  8. #include "include/wifiManager/wifiManager.h"
  9. #include <QDebug>
  10. #include <QMap>
  11. #include <QJsonObject>
  12. #include <QListWidget>
  13. #include <QMessageBox>
  14. #include <QProcess>
  15. #define COUT qDebug() << __FUNCTION__ << __LINE__
  16. void Setting::scanWifiList() {
  17.     qInfo() << "开始扫描wifi列表...";
  18.     wifiList->clear();
  19.     QProcess process;
  20.     process.start("netsh wlan show networks");  // 执行WiFi扫描命令:ml-citation{ref="1,4" data="citationList"}
  21.     process.waitForFinished();
  22.     QString output = QString::fromLocal8Bit(process.readAllStandardOutput());
  23.     QStringList lines = output.split("\r\n");
  24.         foreach (QString line, lines) {
  25.             if (line.contains("SSID")) {
  26.                 QString ssid = line.split(":").last().trimmed();
  27.                 qInfo() << "wifi..name.."<< ssid;
  28.                 wifiList->addItem(ssid);
  29.             }
  30.         }
  31.     COUT << "扫描结束,wifi数量:" << wifiList->count();
  32.     COUT << wifiList;
  33. }
复制代码
结果如下:

二、连接wifi
 


.h 文件



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

灌篮少年

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表