日々の煩雑な単純業務を効率化したいと思ったことはありませんか?今回は完全無料で簡単にPC作業を自動化できる方法をご紹介します。
UWSCとは?
マウスのクリック動作や、キーボードの押下動作を、人間の代わりに行ってくれるフリーウェア(※有償版もあり)です。マクロのように操作を記憶させて再生することもできますが、スクリプトファイルを作成し読み込ませることで複雑な作業の自動化も可能です。
会社でも使っていますが、何百時間分のコスト削減に成功しているスゴイ奴なんです。
・UWSCのダウンロード(窓の杜)
https://www.vector.co.jp/soft/winnt/util/se115105.html
どんな時に役立つの?
ソフトウェアのインストール作業ってPCが沢山あると大変なんですよね。同じことの繰り返しで嫌になりますし、自動インストーラじゃない場合もあります。
そんな時にインストール作業をUWSCに代わりにやってもらうことができるんです。
実際に作ってみた
完成形
こんな感じのVBScript風のスクリプトを書きます。今回はLhaplusをインストーラのサンプルとして使用しています。動画で動作の様子をご覧いただけます。
////自動インストールデモ用UWSCスクリプト////
//インストーラファイルの起動
Exec("C:\Users\user\Desktop\lpls174.exe")
//インストーラーのidを取得
id=GetID("Lhaplus セットアップ")
//インストーラ起動まで待ち受け
Sleep(5)
//ALT+N を送る
sendKey(id,VK_ALT,VK_N,5)
//ALT+N を送る
sendKey(id,VK_ALT,VK_N,5)
//ポップアップした新しい画面のIDを取得
id=GetID("既存のフォルダー")
//ALT+Y を送る
sendKey(id,VK_ALT,VK_Y,5)
id=GetID("Lhaplus セットアップ")
//ALT+I を送る
sendKey(id,VK_ALT,VK_I,5)
//ALT+F を送る
sendKey(id,VK_ALT,VK_F,5)
//キーを送る関数(キーボードを押下したことにする)
procedure sendKey(id,key1,key2,wait)
SCKEY(id,key1,key2)
Sleep(wait)
Fend
スクリプトの解説
- インストーラファイルの実行
LHAPLASのインストーラを指定して実行しています。
//インストーラファイルの起動
Exec("C:\Users\user\Desktop\lpls174.exe")
exe名のpathを指定して実行できます。また今回は未指定ですが、同期・非同期や起動位置(X,Y)も指定することができます。
戻値 = EXEC(exe名, [同期フラグ, X, Y, 幅, 高さ] )
- Idの取得
タイトルバーに表示されているタイトルを指定してアプリケーションのIDを取得します。
//インストーラーのidを取得
id=GetID("Lhaplus セットアップ")
ウィンドウのIDを返す
戻値 = GETID(タイトル, [クラス名, 待ち時間秒, MDI子タイトル] )
キーの自動入力
インストーラーが起動するまでSleep関数で少し待ちます。引数は秒で指定します。sendKeyで2つのキーの同時押しを行っています。インストーラにはショートカットキーが割り当てられており、【ALT+N】で【次へ】、【ALT+Y】で【はい】のように、キー送信でボタンを押すことができます。なお、キーの指定の仕方が仮想気キーといって特殊なので注意が必要です。
//インストーラ起動まで待ち受け
Sleep(5)
//ALT+N を送る
sendKey(id,VK_ALT,VK_N,5)
・
(省略)
・
//キーを送る関数(キーボードを押下したことにする)
procedure sendKey(id,key1,key2,wait)
SCKEY(id,key1,key2)
Sleep(wait)
Fend
VK_BACK | BackSpace キー |
VK_TAB | Tab キー |
VK_CLEAR | Clear キー |
VK_RETURN | Enter キー |
VK_SHIFT | Shift キー |
まとめ
今回は、簡単なインストールの自動化をUWSCのスクリプトを用いて行った。UWSCはアプリの起動やキーボードの押下、マウス操作を自動化でき、さまざまな作業に応用ができる。
コメント