VNCで行うパソコンの遠隔操作をWinActorで自動化する
社内にひとつのパソコン上のみで動作するアプリケーションがありました。データもそのパソコンの中にしかありません。毎月1回、手動で別のサーバーにデータをエクスポートしています。
頻度が少ないので、時間が掛かりませんが、忘れることがあるため、WinActorで夜中に自動処理します。
WinActorのシナリオ実行時には対象のパソコンの電源もついていません。
WOLでパソコンの電源をオン
Wake-on-LAN(ウェイク・オン・ラン、略称WoLあるいはWOL)は、コンピュータネットワーク(主にLAN)に繋がっているコンピュータの電源を遠隔で投入する技術です。
WOLはパソコンのMACアドレスに対して、マジックパケットを送信することで、電源をオンにすることができます。
当然、待ち受けのパソコンの設定も必要です。
↓参考
https://www.atmarkit.co.jp/ait/articles/0602/25/news014.html
設定することで、パソコンをシャットダウンしても、完全には電源オフにせずにBIOSレベルではパケットを受け付ける状態になっています。
このとき、LANケーブルのところのランプがテカテカ点滅しています。電源が完全に切れていないことがわかります。
マジックパケットを送信するソフト
いくつかフリーソフトがありますが、Wake on LAN for Windowsを使いました。
https://www.vector.co.jp/soft/winnt/net/se500992.html
シナリオのなかでマジックパケットを送信
事前に Wake on LAN for Windowsに対象PCの設定をしました。
シナリオでは「Explorerでファイル開く」でWake on LAN for Windowsの実行ファイルであるWinWol.exeを指定しました。ソフトを起動後にキーボードショートカットを使い、マジックパケットを送信します。
パケットを受け取ったパソコンは電源が起動します。パソコンが完全に起動するまで長めに待機します。
VNCでパソコンを操作
Virtual Network Computing(ヴァーチャル・ネットワーク・コンピューティング、略称VNC)は、ネットワーク上の離れたコンピュータを遠隔操作するためのRFBプロトコルを利用する、リモートデスクトップソフトです。
Windows標準のリモートデスクトップは使用せずに、UltraVNCを使いました。
UltraVNC(64bit版) v1.2.4.0
https://forest.watch.impress.co.jp/library/software/ultravnc/
操作する側(クライアント)とされる側(サーバー)にそれぞれインストールします。
サーバー側は、パソコン起動時に自動実行したいので、ultravnc serverをサービスとしてインストールします。
シナリオのなかでVNCで操作する
「Explorerでファイル開く」でインストールしたvncviewer.exeを指定します。vncviewerを起動したら対象PCのIPアドレスとパスワードでリモートアクセスします。
ここからは、リモートの操作のため、WinActorで対象PC上で開いているウィンドウを取得・操作することはできません。
UltraVNCのウィンドウに対して、キーボードと画像マッチングで行います。
Windowsのログイン処理やアプリケーションの操作、Windowsのシャットダウンまでできました。
注意点
- 操作されるPCはLANケーブルを挿してLAN上にあること!
- 操作されるPCに接続しているモニタは、シナリオ作成時のままであること!
モニタを外した状態でPCを起動しても画面の解像度が変わります。よって、画像マッチングに失敗します。
以上です。
ディスカッション
コメント一覧
まだ、コメントがありません