我在 Android 设备上保存了一些 wifi 网络的信息,有什么办法可以将这些数据移到 Windows 8.1 上吗?我已经从 Android 中导出了包含配置(纯文本密码等)的 .txt 文件,但我不确定在 Windows 中将其放在哪里,以及它需要采用什么格式。
编辑:来自 Android 设备的 wifi 配置文件示例(位于 /data/misc/wifi/wpa_supplicant.conf):
network={
ssid="Network1"
psk="xxx"
key_mgmt=WPA-PSK
priority=30
}
network={
ssid="Network2"
scan_ssid=1
key_mgmt=WPA-EAP IEEE8021X
eap=PEAP
identity="uname"
password="pword"
phase2="auth=MSCHAPV2"
priority=32
proactive_key_caching=1
}
理想情况下,最好采用某种方式来复制多个网络,但手动逐个解决方案也是可以接受的。
更新:Windows 中的 wifi 属性似乎保存为 xml 文件,位于:C:\ProgramData\Microsoft\Wlansvc\Profiles\Interfaces{InterfaceID}{something}.xml
如果能提供关于此 xml 文件的架构或映射的任何信息,我们将不胜感激。
答案1
可以将无线网络导入为 xml 文件,但这必须经过netsh 命令。
例如,以下文件定义使用 WPA2-PSK AES 的无线连接,并将密码指定为未加密的纯文本:
<?xml version="1.0"?>
<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1">
<name>SSID-NAME</name>
<SSIDConfig>
<SSID>
<hex>SSID-NAME-in-hex</hex>
<name>SSID-NAME</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>UNENCRYPTED-PASS-PHRASE</keyMaterial>
</sharedKey>
</security>
</MSM>
</WLANProfile>
所有上述 xml 元素的描述均可在 Microsoft 文档中找到:
WLAN_profile 架构元素。
可以通过以下命令将该 xml 文件导入 Windows:
netsh wlan add profile filename="PATH_AND_FILENAME.xml"
请注意,虽然密码可以在导入的文件中解密,但 Windows 在将配置文件内容放入配置文件时会对其进行加密,正如您已经发现的,该文件存储在:
C:\ProgramData\Microsoft\Wlansvc\Profiles\Interfaces\{GUID}\{GUID}.xml
这里每个无线设备都由一个随机分配的 GUID 接口名称表示,形式为{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
。
进一步阅读:
导入和导出 Windows 网络设置
揭露 WiFi 密码秘密
将 WLAN 配置文件推送到 Windows 设备的两种方法