2016-12-15 361 views
4

如何使用CMD输入密码连接到新的WiFi?如何使用CMD连接到WiFi?

对于我的学校项目,我决定使用cmd制作WiFi_manager程序。

我知道,以显示所有WiFi网络(在CMD):

netsh wlan show networks 

现在可以说,我想连接到我以前从未连接WiFi网络。而且该WiFi也不会添加任何配置文件。

但我知道WiFi的密码。

1)什么是命令行。

下面给出的WiFi网络的信息:

SSID 3 : Ismail 
    Network type   : Infrastructure 
    Authentication   : WPA-Personal 
    Encryption    : CCMP 

and password is "Thanks_bro". 

我已经搜索这个问题,在谷歌,但他们没有说一个正确的方式,其中大部分都与黑客和到WiFi连接而无需密码等等。所以我把这个问题发给了这里的BEST程序员来回答!

如果不行,我们可以使用C++吗?

回答

5

所以你已经知道netsh wlan

如果你进入它,你就可以得到尽可能命令的列表。一个是add

如果输入netsh wlan add,则会得到另一个可能的子命令列表。一个是profile

如果您输入netsh wlan add profile,您将获得关于其所有可能参数的详细说明。一个需要的参数是包含配置文件信息的XML文件。

那么如何获得这样一个XML文件?回到netsh wlan并研究关键字。有export

如果输入netsh wlan export,则会得到可能的子命令的另一个列表。一个是profile。它会在本地目录中创建一个XML,其中包含当前WiFi连接所需的信息。

如果您想以明文形式获取密码,则还需要添加参数key=clear。使整个命令成为

netsh wlan export profile key=clear 

这里是一个已经包含了所需的占位符

<?xml version="1.0"?> 
<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1"> 
    <name>{SSID}</name> 
    <SSIDConfig> 
     <SSID> 
      <name>{SSID}</name> 
     </SSID> 
    </SSIDConfig> 
    <connectionType>ESS</connectionType> 
    <connectionMode>auto</connectionMode> 
    <MSM> 
     <security> 
      <authEncryption> 
       <authentication>WPA2PSK</authentication> 
       <encryption>AES</encryption> 
       <useOneX>false</useOneX> 
      </authEncryption> 
      <sharedKey> 
       <keyType>passPhrase</keyType> 
       <protected>false</protected> 
       <keyMaterial>{password}</keyMaterial> 
      </sharedKey> 
     </security> 
    </MSM> 
    <MacRandomization xmlns="http://www.microsoft.com/networking/WLAN/profile/v3"> 
     <enableRandomization>false</enableRandomization> 
    </MacRandomization> 
</WLANProfile> 

只需更换关键字{SSID}一个例子(出现两次)和{password}与所需的值,并通过导入该文件调用

netsh wlan add profile filename="myProfile.xml" 
+0

感谢兄弟知道了,可能是另一个时间来学习的“的netsh”命令,整个产业链。但因为我急于完成我的项目,并且还有更多问题需要我解决和学习!现在可以为我的步骤,请! thx –

+0

所有的步骤都在我的答案。只需尝试一下并检查结果即可。 – Oliver

+1

但是没有命令输入wifi密码! –

0

基本的netsh wlan ?在命令提示符显示有一个netsh wlan connect命令。但是,这个命令似乎需要预先存在的“配置文件”;你需要使用netsh wlan add来创建。
细节留给读者阅读。 (毕竟这是作业。)

还有一个使用Windows SDK中包含的Windows API的C/C++示例WLAN客户端。我通过搜索找到了这个wlanclient msdn,页面是here