batch-file - 在批处理文件中连接到无线网络(一个还不是您的配置文件之一)

标签 batch-file networking cmd netsh

所以,我目前正在尝试创建一个批处理文件来连接到无线网络。到目前为止,我有以下...

@echo off
netsh wlan connect ssid="My SSID" name="My Name"
pause

它工作正常,但问题是它只能连接到我的配置文件中已经存在的网络。有什么方法可以连接到无线网络,使用密码作为参数,我的配置文件中还没有?

最佳答案

您需要一个包含 SSID 和密码的 xml 文件。

<?xml version="1.0"?>
<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1">
    <name>{example}</name>
    <SSIDConfig>
        <SSID>
            <hex>{6578616d706c65}</hex>
            <name>{example}</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>
填写 {6578616d706c65} , {example} , {example}{password}用你自己的信息。{6578616d706c65}example 的十六进制, 点击 here将 ASCII 转换为 HEX。
确保使用正确的格式,即使最后还有一个空格,windows 也不会接受。
点击 here下载example.xml和其他文件。
如果你想使用纯 cmd 连接(无需手动更改 {password}),请继续阅读
为此,您将需要 36 个带有 a-z 和 0-9 的 xml 文件(不可能同时具有大写和小写。)
点击 here下载 36 个文件和 example.xml。
首先你需要把example.xml分成3部分,第一部分来自<?xml version="1.0"?><keyMaterial> .
将其命名为 T.xml .
第二部分是密码。
第三部分来自</keyMaterial>最后( </WLANProfile> )确保您不要忘记 </WLANProfile> 之后的换行符.
将其命名为 B.xml .
然后您将使用复制命令来合并文件。
代码应该是这样的
copy /y C:\T.xml + C:\keyMaterial\p.xml + C:\keyMaterial\a.xml + C:\keyMaterial\s.xml + C:\keyMaterial\s.xml + C:\keyMaterial\w.xml + C:\keyMaterial\o.xml + C:\keyMaterial\r.xml + C:\keyMaterial\d.xml + C:\B.xml C:\example.xml /B
netsh wlan add profile filename="C:\example.xml" user=all
netsh wlan connect example
最后,您可以通过运行 ping google.com 来检查您是否已连接。 .

关于batch-file - 在批处理文件中连接到无线网络(一个还不是您的配置文件之一),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47403038/

相关文章:

batch-file - 如何隐藏批处理文件的命令提示符

Python-错误2 : No such file or directory

cmd - bat 文件: get parent pathname

objective-c - 查找开发机器的 IP 地址以进行 Web API + iPhone 设置

c - 如何使用cmd编译C程序?

windows - 循环批处理文件

c#启动进程参数传入数据

windows - 是否有用于 UNIX 的 "Windows Batch file"模拟器/解释器?

java - Java中字节/整数数组的实际数据大小是多少

java - 数据报包数量