WindowsでSSID毎に設定を変更するbatファイル


下記内容でbatファイルを作成する。
更に同ディレクトリにSSIDと同じ名前のbatファイルを作成しておき、それぞれの処理を記述する。設定対象外のSSID用の処理はother.batに記述して同じく配置する。
作成した下記内容のbatファイルをタスクスケジューラに登録し、任意のタイミング、任意の権限で自動実行させると良いと思います。

setlocal enabledelayedexpansion
    :: netshの結果を取得する
    set netshresult=
    for /f "usebackq tokens=*" %%i in (`netsh wlan show interfaces`) do (
        set netshresult=!netshresult!^%%i
    )
    :: 設定1
    set ssid=test-ssid1
    call set compare=%%netshresult:%ssid%=%%
    if not "%netshresult%" == "%compare%" goto CHANGE
    :: 設定2
    set ssid=test-ssid2
    call set compare=%%netshresult:%ssid%=%%
    if not "%netshresult%" == "%compare%" goto CHANGE
    :: その他のSSID
    set ssid=other
    :: 変更処理
    :CHANGE
    :: SSIDと同じ名前のbatファイルを呼び出す
    call %~dp0\%ssid%.bat
    :END
endlocal