single.php

バッチファイルでリモートデスクトップを複数起動する

リモートデスクトップを使う時の話。接続先が多いと、毎回パスワードを入力したりするの面倒。バッチファイルと接続先のリストを使って自動化した備忘録的な投稿です。

スポンサーリンク

コマンドラインでmstscを実行

1つだけ接続しようとするのは簡単でした。[connect.bat]なんかを作成して、以下のように記述してパラメタつきで「MSTSC」が実行します。

[connect.bat]

@Echo off
Set SERVER=123.123.123.1
Set USERNAME=Administrator
Set PASSWORD=hogehoge
Cmdkey /generic:TERMSRV/%SERVER% /user:%USERNAME% /pass:%PASSWORD%
Start mstsc /v:%SERVER%
Timeout 3
Cmdkey /delete:TERMSRV/%SERVER%

この方法の難点は、バッチファイル内にパスワードを記載する必要があるのと、複数台に向かってリモート接続しようとした場合、バッチファイルも複数用意する必要があることです。

しかし、テスト環境として作成した環境に接続する(パスワード入力が面倒)場合などは十分要望に応えてくれると思います。

極端な話、バッチファイルを送れば、誰でも接続できるようになります。

リストを作って複数台接続する

複数の接続先に一度に接続するような場合には、接続先とユーザ名、パスワードが記載されたリストを作って接続する方法も考えられます。

[srvlist.txt]

123.123.123.1, Administrator, 1111
123.123.123.2, Administrator, 2222
123.123.123.3, Administrator, 3333
123.123.123.4, Administrator, 4444
123.123.123.5, Administrator, 5555

[connect.bat]

for /F "delims=, tokens=1-3" %%i in (srvlist.txt) do (
Cmdkey /generic:TERMSRV/%%i /user:%%j /pass:%%k
Start mstsc /v:%%i
Timeout 3
)

あくまでも個人利用

パスワードを記載してしまうので、セキュリティとしては低いですが、一度に何台も接続したい時には毎回入力する手間を省くことができるので、とても実用的だと思います。

スポンサーリンク

最後までご覧いただき、ありがとうございました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です