0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

指定したSSIDのWiFiに接続したときにタスクスケジューラを動かす

Posted at

概要

指定したSSIDのWiFiに接続したとき、何らかの処理を自動で実行させたいときの記事です。

用途としてはたとえば

  • テレワークで自宅Wifiにつなぐときと、会社WiFiにつなぐときでプロキシなど何らかの設定を変える
  • 自宅WiFi以外につないだとき警告する

などが考えられます。

設定の流れ

以下の流れで設定します。

  1. トリガーにしたいWiFiのSSIDを調べる
  2. 実行したい処理をスクリプト化する
  3. タスクスケジューラに登録する

本記事ではこのうち項番3を扱います。

タスクスケジューラの設定方法

WiFiに接続したとき、Windowsの Microsoft-Windows-WLAN-AutoConfig/Operational というログにイベントID 8001 でイベントが記録されます。

タスクスケジューラでこのイベントをキャッチして登録したスクリプトを実行します。

1. トリガータブを開く

トリガータブ

2. タスクの開始でイベント時を選択する

イベント時を選択

3. カスタムを押す

カスタムを選択

4. XMLタブで手動でクエリを編集するにチェックを入れる

手動でクエリを編集

5. 以下のクエリをいれる

Data='指定したいSSIDを入力'の部分に自分のSSIDを入れます。

<QueryList>
  <Query Id="0" Path="Microsoft-Windows-WLAN-AutoConfig/Operational">
    <Select Path="Microsoft-Windows-WLAN-AutoConfig/Operational">
      *[System[(EventID=8001)]]
      and
      *[EventData[Data[@Name='SSID'] and (Data='指定したいSSIDを入力')]]
    </Select>
  </Query>
</QueryList>

そのほかの設定は本記事とは関係ないため割愛します。

これで指定したSSIDにつないだとき、指定したスクリプトが実行できます。

切断時も同様に自動化できる

ちなみに切断時はイベントID 8003でキャッチできるため、同様の仕組みで切断時の処理を追加できます。

切断されたら自動でつなぎ直したいとか、複数のWiFiがあるから別のものへつなぎたいとかに使えそうです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?