从 Windows Vista 开始,Windows 系统中用于网络配置的命令 netsh.exe 中就加入了对无线网络的支持。在 Windows 7 中,该命令得到了进一步的加强。

使用 netsh 命令,可以方便地备份还原无线网络配置。

让我们开始吧。新建一个文本文件,重命名为backup_wlan_profile.cmd。在该文件上点击右键,选择“编辑”。将以下代码粘贴到文件,然后保存并退出。
 
@echo off

set wlan_profile_folder=.\无线网络配置文件

if not exist %wlan_profile_folder% (
  md %wlan_profile_folder%
)

netsh wlan export profile folder=%wlan_profile_folder% key=clear

ping 127.1>nul
 
接着,再新建一个文本文件,重命名为restore_wlan_profile.cmd。打开该文件并粘贴以下代码,然后保存并退出。
 
@echo off

set wlan_profile_folder=.\无线网络配置文件

for %%i in (%wlan_profile_folder%\*.xml) do (
  netsh wlan add profile filename="%%i"
)

ping 127.1>nul
 
好了!现在你可以试试效果,如果你的计算机上已经连接过无线网络,你现在就可以使用刚才新建的命令来备份无线网络配置。

运行 backup_wlan_profile.cmd,你的无线网络配置会保存到backup_wlan_profile.cmd所在目录下新建的“无线网络配置文件”文件夹中,文件格式是XML。如果你很好奇这里面到底记录着什么,你可以打开它。
 
<?xml version="1.0"?>
<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1">
  <name>The_Azeroth</name>
  <SSIDConfig>
    <SSID>
      <hex>5468655F417A65726F7468</hex>
      <name>The_Azeroth</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>Azeroth</keyMaterial>
      </sharedKey>
    </security>
  </MSM>
</WLANProfile>
 

如你所见,这里面记录的是无线网络的一些关键信息,比如SSID、连接类型、加密方式、密码等等,即便不使用前面建立的 restore_wlan_profile.cmd 这个命令,你也可以根据<SSID>和 <keyMaterial> 这两节内容,得知无线网络的名和密码。

当然,如果你出于安全考虑不希望在备份的 XML 文件中以文本形式显示无线网络密码,可以把backup_wlan_profile.cmd 中的 “key=clear” 参数去掉。需要说明的是,该参数是Windows 7 中新加入的,Windows Vista 并不支持。

恢复配置时,同样简单。直接运行 restore_wlan_profile.cmd 即可,当然在这之前,你要使用 backup_wlan_profile.cmd做好了备份。

 对了,还有一个秘密。如果你不想输入上面的代码,也可以到 %HomeDrive%\ProgramData\Microsoft\Wlansvc\Profiles\Interfaces\{无线网卡的GUID} 下找到无线网络配置文件。缺点是XML文件是以GUID的方式命名的,不太方便记忆。