一部の情報は非常に古いもの(20年以上前〜)ですので、利用する際はご注意ください(Java 1.4 とか .NET 1.0 とか、Windows 2000 とか)
お問い合せは wiki@shise.net まで。Gmail に転送されるので、スパムは全部カットされます。
UWSCって?
Windows の操作を自動化するツールです。自分で動作を表記、記録し、それを再生する形になります。
また、単純な操作だけでなく、画面に表示されている画像を取得して判定し、処理を行うことが出来ます。
がんばればゲームを自動操作させたりできます。
UWSC の作者のホームページは以下のURLになります。
http://www.h7.dion.ne.jp/~umiumi/
文字列をタイプする関数
渡された文字列を、指定された間隔でタイプする関数です。
TypeText("hello", 100)
2〜100ミリ秒の間隔で渡された文字列をタイプします。
これは、以下のコードと等価です。
speed = 100 KBD(VK_H,CLICK,RANDOM(speed)+2) KBD(VK_E,CLICK,RANDOM(speed)+2) KBD(VK_L,CLICK,RANDOM(speed)+2) KBD(VK_L,CLICK,RANDOM(speed)+2) KBD(VK_O,CLICK,RANDOM(speed)+2)
また、特殊な記号を用いてエンター、シフトキーを入力することが出来ます。
TypeText("$1#", 100)
これは、以下のコードと等価です。
speed = 100 KBD(VK_SHIFT,DOWN,RANDOM(speed)+2) KBD(VK_1,CLICK,RANDOM(speed)+2) KBD(VK_SHIFT,UP,RANDOM(speed)+2) KBD(VK_RETURN,CLICK,RANDOM(speed)+2)
$は、次の文字はシフトキーを押しながら入力されるという意味になります。
#は、エンターキーを押すという意味になります。
もし$や#をタイプしたい場合、$であれば「$4」、#であれば「$3」で入力できます。
「$4」は、シフトキーを押しながら「4」のキーを押すので、結果的に「$」がタイプされます。
コード
Function TypeText(mozi, speed) len = LENGTH(mozi) aaa = ASC("a") - ASC("A") flag = 0 FOR i = 1 TO len t = COPY(mozi, i, 1) code = ASC(t) IFB ASC("A") <= code AND code <= ASC("Z") THEN flag = 1 ENDIF IFB ASC("a") <= code AND code <= ASC("z") THEN code = code - aaa ENDIF SELECT code CASE ASC("/") code = VK_OEM_2 CASE ASC("'") flag = 1 code = VK_7 CASE ASC(" ") code = VK_SPACE CASE ASC(".") code = VK_OEM_PERIOD CASE ASC(",") code = VK_OEM_COMMA CASE ASC("-") code = VK_OEM_MINUS CASE ASC("#") code = VK_RETURN CASE ASC("_") flag = 1 code = VK_OEM_5 CASE ASC("$") flag = 1 Continue SELEND IFB flag = 1 THEN KBD(VK_SHIFT,DOWN,speed) ENDIF KBD(code,CLICK, RANDOM(speed)+2) IFB flag = 1 THEN KBD(VK_SHIFT,UP,speed) ENDIF flag = 0 NEXT Result = 0 Fend