使用C# 如何获取本机连接的WIFI名称[C# ---1]

news/2025/2/5 0:00:31/

前言

楼主最近在写一个WLAN上位机,遇到了使用C#查询SSID 的问题。CSDN上很多文章都比较老了,而且代码过于复杂。楼主自己想了一个使用CMD来获得SSID的方法
C#本身是没有获得WINDOWS网路信息的能力,必须要用系统API,WMI什么的,比较麻烦。其实完全可以用CMD命令,十分简单快捷。
如果对您有用,还请点赞收藏关注,这对我十分重要♪(´▽`)

CMD

netsh wlan show interfaces 

效果:

C:\Users\Basicoperation>netsh wlan show interfaces系统上有 1 个接口:名称                   : WLAN说明            : Intel(R) Wi-Fi 6 AX201 160MHzGUID                   :******************物理地址       : *********************界面类型         : 主要状态                  : 已连接SSID                   : TP-LINK_9FAABSSID                  : *************网络类型               : 结构无线电类型             : ***********身份验证               : WPA2 - 个人密码                 :***********连接模式        : 配置文件频带                   : 2.4 GHz通道                : 11接收速率(Mbps)         : 54传输速率 (Mbps)        : 270信号                   : 84%配置文件               : TP-LINK_9FAA

那C#就很好写了

using System;
using System.Diagnostics;class Program
{static void Main(){try{// 执行CMD命令来获取无线网络接口信息Process process = new Process();process.StartInfo.FileName = "netsh";process.StartInfo.Arguments = "wlan show interfaces";process.StartInfo.UseShellExecute = false;process.StartInfo.RedirectStandardOutput = true;process.StartInfo.CreateNoWindow = true;process.Start();// 读取命令输出string output = process.StandardOutput.ReadToEnd();process.WaitForExit();// 解析输出以获取SSIDstring ssid = ExtractSsidFromOutput(output);if (!string.IsNullOrEmpty(ssid)){Console.WriteLine("当前连接的SSID是: " + ssid);}else{Console.WriteLine("未连接到任何无线网络或无法获取SSID。");}}catch (Exception ex){Console.WriteLine("发生错误: " + ex.Message);}}static string ExtractSsidFromOutput(string output){string[] lines = output.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);foreach (string line in lines){if (line.Trim().StartsWith("SSID")){// 假设SSID在等号后面,去除前导和尾随空格string ssid = line.Split(new[] { ':' }, 2)[1].Trim();return ssid;}}return null;}
}

运行效果

当前连接的SSID是: TP-LINK_9FAA

如果对您有用,还请点赞收藏关注,这对我十分重要♪(´▽`)


http://www.ppmy.cn/news/1569360.html

相关文章

IP服务模型

1. IP数据报 IP数据报中除了包含需要传输的数据外,还包括目标终端的IP地址和发送终端的IP地址。 数据报通过网络从一台路由器跳到另一台路由器,一路从IP源地址传递到IP目标地址。每个路由器都包含一个转发表,该表告诉它在匹配到特定目标地址…

硕成C语言6

数据类型的定义:一组值的集合以及定义在该值集上的一组操作的总称C 语言中整数的除法运算结果是取整的,这意味着它会把小数部分直接舍去,只保留整数部分。比如,5 / 2 的结果是 2,而不是 5 【整型:整型常量和…

如何使用 DeepSeek API 结合 VSCode 提升开发效率

引言 在当今的软件开发领域,API 的使用已经成为不可或缺的一部分。DeepSeek 是一个强大的 API 平台,提供了丰富的功能和数据,可以帮助开发者快速构建和优化应用程序。而 Visual Studio Code(VSCode)作为一款轻量级但功…

【C++】string类(上):string类的常用接口介绍

文章目录 前言一、C中设计string类的意义二、string类的常用接口说明1. string类对象的常见构造2. string类对象的容量操作2.1 size、capacity 和 empty的使用2.2 clear的使用2.3 reserve的使用2.4 resize的使用 3. string类对象的访问及遍历操作3.1 下标[ ] 和 at3.2 迭代器it…

Spring AI 与企业级应用架构的结合

随着 AI 技术的不断发展,越来越多的企业开始将 AI 模型集成到其业务系统中,从而提升系统的智能化水平、自动化程度和用户体验。在此背景下,Spring AI 作为一个企业级 AI 框架,提供了丰富的工具和机制,可以帮助开发者将…

Dijkstra算法解析

Dijkstra算法,用于求解图中从一个起点到其他所有节点的最短路径。解决单源最短路径问题的有效方法。 条件 有向 带权路径 时间复杂度 O(n平方) 方法步骤 1 把图上的点分为两个集合 要求的起点 和除了起点之外的点 。能直达的写上权值 不…

冯诺依曼系统及操作系统

目录 一.冯诺依曼体系结构 二.操作系统 三.系统调用和库函数概念 一.冯诺依曼体系结构 我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系 截至目前,我们所认识的计算机,都是由一…

Hive:静态分区(分区语法,多级分区,分区的查看修改增加删除)

hive在建表时引入了partition概念。即在建表时,将整个表存储在不同的子目录中,每一个子目录对应一个分区。在查询时,我们就可以指定分区查询,避免了hive做全表扫描,从而提高查询率。 oracle和Hive分区的区别 orcale在…