admin管理员组文章数量:1558098
文章目录
- 一、如何获取电脑上Wi-Fi密码
- 二、如何代码实现自动获取(C#)
- 1.启用CMD命令窗口进程
- 2.输入相应命令获取WIFI密码
- 软件运行效果
如果你已经连接了一个WiFi,但是不知道该网络的密码,那么要找到该网络的密码并不太难,可以通过以下方法进行获取。
一、如何获取电脑上Wi-Fi密码
方法1:通过已连接Wi-Fi的电脑查看:
- 打开电脑右下角的无线网图标,点击进入网络连接状态框。
- 选择需要查看的无线网络连接,右键点击选择“属性”。
- 在属性窗口中,选择“安全”选项卡,勾选“显示字符”,然后在密码框中可以看到以数字显示的Wi-Fi密码。
方法2:通过使用命令提示符
- 使用Win+R打开CMD命令运行窗口
- 在窗口中输入以下命令获取用户配置文件
netsh wlan show profiles
3. 根据相应的Wi-Fi名称获取指定的Wi-Fi密码(用实际WIFI名称替换命令中"xxx")
netsh wlan show profiles name=xxx key=clear
二、如何代码实现自动获取(C#)
1.启用CMD命令窗口进程
关键代码如下:
public static bool GetCmdResult(string cmd, out string strResult)
{
Process process = new Process();
strResult = "";
try
{
process.StartInfo.UseShellExecute = false; //是否使用操作系统shell启动
process.StartInfo.CreateNoWindow = true; //是否在新窗口中启动该进程的值 (不显示程序窗口)
process.StartInfo.RedirectStandardInput = true; // 接受来自调用程序的输入信息
process.StartInfo.RedirectStandardOutput = true; // 由调用程序获取输出信息
process.StartInfo.RedirectStandardError = true; //重定向标准错误输出
process.StartInfo.FileName = "cmd.exe";
process.Start(); // 启动程序
process.StandardInput.WriteLine(cmd); //向cmd窗口发送输入信息
process.StandardInput.AutoFlush = true;
// 前面一个命令不管是否执行成功都执行后面(exit)命令,如果不执行exit命令,后面调用ReadToEnd()方法会假死
process.StandardInput.WriteLine("exit");
StreamReader reader = process.StandardOutput; //获取exe处理之后的输出信息
string curLine = reader.ReadLine(); //获取错误信息到error
string strTmp = "";
while (!reader.EndOfStream)
{
if (!string.IsNullOrEmpty(curLine))
{
strTmp += curLine;
strTmp += "\r\n";
}
curLine = reader.ReadLine();
}
reader.Close(); //close进程
process.WaitForExit(); //等待程序执行完退出进程
process.Close();
strResult = strTmp;
return true;
}
catch (Win32Exception e)
{
strResult = e.Message;
return false;
}
return false;
}
2.输入相应命令获取WIFI密码
关键代码如下:
// 获取用户名
bool bRet = Cmd.GetCmdResult("netsh wlan show profiles", out strRes);
if (bRet)
{
string[] strArray = strRes.Split('\r');
foreach (string strLine in strArray)
{
if (strLine.Contains("所有用户配置文件"))
{
string[] strTmp = strLine.Split(':');
if (strTmp.Length == 2)
{
WifiInfo info = new WifiInfo();
info.strName = strTmp[1].Trim();
listWifiInfo.Add(info);
}
}
}
for (int i = 0; i < listWifiInfo.Count; i++)
{
listWifiInfo[i].iIndex = i + 1;
if (Cmd.GetCmdResult($"netsh wlan show profiles name=\"{ listWifiInfo[i].strName}\" key=clear", out strRes))
{
string[] strArrayPWD = strRes.Split('\r');
foreach (string strLine in strArrayPWD)
{
if (strLine.Contains("关键内容"))
{
string[] strTmp = strLine.Split(':');
if (strTmp.Length == 2)
{
listWifiInfo[i].strPWD = strTmp[1].Trim();
}
break;
}
}
}
}
return true;
}
之后将数据在界面上显示出来即可。
软件运行效果
软件运行效果如下图所示:
软件运行程序和相应源码已上传,CSDN下载。
软件下载
源码下载
软件和源码已同步放置在公众号: 没有黑科技 ,可免费进行下载获取。
版权声明:本文标题:WIFI密码获取,并通过代码实现自动获取显示(C#) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1727311372a1107686.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论