スクランブル
スクリプトを暗号化して難読化します。
以下に記載するコマンドはコマンドプロンプトで実行します。
xxxxx.uwsにスクランブルを掛けたものをyyyyy.uwsとして生成。
xxxxx.uwsはxxxxx.orgにリネームされ、xxxxx.uwsとして生成。
.orgはオリジナル(original)を表す拡張子で、元のファイルを意味します。
パスが通ってない場合はエラーが発生するので、パスを通すかCDでUWSC.exeのあるパスに移動してから実行します。
暗号化したものをUWSC Debuggerで開こうとすると以下のエラーが表示されます。
スクランブルを掛けたものをテキストエディタ(文字コード:UTF-16)で開くと以下のように元のコードがわからなくなります。
設定ファイル・ログファイル
設定ファイル・ログファイルはWindows XPの場合はC:\Documents and Settings\uwsername\Application Data\UWSC、Vista以降はC:\Users\username\AppData\Roaming\UWSCにあります。Application Data、AppDataフォルダは非表示フォルダです。
-
UWSC
- RecIE.INI
- UDEBUG.LOG
- UDebug.INI
- UWSC.INI
- UWSC.LOG
以下のプログラムを実行すると、UWSCのINIファイルがある場所をエクスプローラで開くことができます。
RecIE.INI
RecIEの設定情報が書かれています。
SETセクション
設定の項目
| Position | x座標,y座標 |
|---|---|
| Size | 幅,高さ |
| Ratio | 比率 |
| NoComment | コメントは付加しない。チェックなしは0、チェックありは1。 |
| LinkNavi | リンクはIE.Navigateで処理する。チェックなしは0、チェックありは1。 |
| Assert | Assert関数入れる。チェックなしは0、チェックありは1。 |
| AllNavi | 全てIE.Navigateで処理する(※ページによりダメな場合あり)。チェックなしは0、チェックありは1。 |
| NoNewWin | 新規ウィンドウ(RecIE)の作成はしない。チェックなしは0、チェックありは1。 |
| GetHtml | "HTMLの取得"にてヘッダー部も含めて取得する。チェックなしは0、チェックありは1。 |
| Version | アプリのバージョン |
URLセクション
記録でアドレスを入力するときの履歴にあるURL。1行毎に番号=URLと記録されていきます。
BUSYWAITセクション
ASSERTセクション
POPUPWINセクション
NEWRECWINセクション
UDEBUG.LOG
UWSC Debuggerでプログラムを実行したときのログが出力されます。
UDebug.INI
UWSC Debuggerの設定情報が書かれています。[Option]->[Font / Color...]で設定した内容は、UWSC Debuggerを終了したときにINIファイルに書き込まれます。
| TabWidth | タブ幅。半角文字何文字分の幅を取るか。2〜16の偶数を指定。 |
|---|---|
| Color | 背景色・文字色の(Color値:BBGGRRを10進数にした値)を背景色,文字色の形式で指定。赤:255、緑:65280、青:16711680。 |
| Syntax | 構文の文字色(Color値:BBGGRRを10進数にした値)を文字色,太字・斜体の形式で指定。標準:0、太字:1、斜体:2、太字・斜体:3。 |
| Constant | 定数の文字色(Color値:BBGGRRを10進数にした値)を文字色,太字・斜体の形式で指定。標準:0、太字:1、斜体:2、太字・斜体:3。 |
| SpecialVar | 特殊変数の文字色(Color値:BBGGRRを10進数にした値)を文字色,太字・斜体の形式で指定。標準:0、太字:1、斜体:2、太字・斜体:3。 |
| Comment | コメントの文字色(Color値:BBGGRRを10進数にした値)を文字色,太字・斜体の形式で指定。標準:0、太字:1、斜体:2、太字・斜体:3。 |
| UWSCFunc | UWSC関数の文字色(Color値:BBGGRRを10進数にした値)を文字色,太字・斜体の形式で指定。標準:0、太字:1、斜体:2、太字・斜体:3。 |
| String | 文字列の文字色(Color値:BBGGRRを10進数にした値)を文字色,太字・斜体の形式で指定。標準:0、太字:1、斜体:2、太字・斜体:3。 |
| Position | UWSC Debugger起動時の位置をx座標,y座標の形式で指定。 |
| Size | UWSC Debuggerのサイズを幅,高さの形式で指定。 |
| Ratio | 各ウィンドウの高さを変数・ログの幅,Global変数の高さ,ログの高さで指定。ピクセル単位。 |
| Version | UWSC Debuggerのバージョン |
| FileUpMsgTime | 外部エディタで修正されたときのメッセージ表示時間。単位はms(ミリ秒)。 |
| BtnStop | 停止ボタンに割り当てるファンクションキーの数値を1〜12の範囲で指定。ファンクションキーの数字部分を指定。F5なら5、F8なら8。 |
| BtnRun | 実行ボタンに割り当てるファンクションキーの数値を1〜12の範囲で指定。 |
| BtnPause | 一時停止ボタンに割り当てるファンクションキーの数値を1〜12の範囲で指定。 |
| BtnStepIn | ステップインに割り当てるファンクションキーの数値を1〜12の範囲で指定。 |
| BtnStepOver | ステップオーバーに割り当てるファンクションキーの数値を1〜12の範囲で指定。 |
| Font | フォント |
以下はデフォルトでは記載がないがユーザーが追加できる項目です。
| LineSpace | 行間を指定。Fontの高さに対してパーセント指定。マイナスで行間が狭まる(-20で行間なし)。 |
|---|
FileUpMsgTimeは以下のような吹き出しが表示される時間を指定できます。
UWSC Debuggerとメモ帳で同じファイルを開き、メモ帳でプログラムを修正しUWSC Debuggerをアクティブにするというようなときに表示されます。
UWSC.INI
UWSCの設定情報が書かれています。
以下がUWSC.INIに記述されている内容です。
SETセクション
設定で指定した項目がこのセクションに記録されます。
| Position | UWSCメイン画面の座標。x座標,y座標で指定。 |
|---|---|
| PlayHotKey | 再生のホットキーを表す値。UWSCスクリプトを再生するホットキーです。組み合わせるキー,母体キーで指定。キーコード参照。 |
| StopHotKey | 停止のホットキーを表す値。UWSCスクリプトを停止するホットキーです。組み合わせるキー,母体キーで指定。キーコード参照。 |
| RecHotKey | 記録のホットキーを表す値。UWSCスクリプトを記録するホットキーです。組み合わせるキー,母体キーで指定。キーコード参照。 |
| TrayHotKey | トレイのホットキーを表す値。UWSCウィンドウをトレイに格納するホットキーです。組み合わせるキー,母体キーで指定。キーコード参照。 |
| LunchMenuHotKey | ランチメニューのホットキーを表す値組み合わせるキー,母体キーで指定。キーコード参照。 |
| MouseOrg | 余分な時間、マウス移動は記録しない。0:チェックあり、1:チェックなし。 |
| NotActive | . |
| StayOnTop | UWSC本体のウィンドウを最前面に固定(0:固定しない、1:固定する) |
| LogLines | PRINT文でのロギングの最大行数(デフォルト:2000) |
| DefaultFont | BALLOON関数 (スクリプト関数)、FUKIDASI関数、MSGBOX関数 (スクリプト関数)などに使用するフォントとサイズを指定。フォント名,フォントサイズの形式(デフォルト:Tahoma)。 |
| TaskTrayStart | UWSCソフト起動時にウィンドウをタスクトレイに格納するかどうか。0:タスクトレイに格納しない、1:タスクトレイに格納する |
| RecLevel | 記録方法を示す値。0:低レベル記録、1:高レベル記録。 |
| Cp2Clipboard | 記録後クリップボードへコピーする。0:チェックあり、1:チェックなし。 |
| NotExtraMovRec | マウス座標を相対座標で記録する。0:チェックあり、1:チェックなし。 |
| RecBackGround | バックグラウンドで実行できる形で記録 |
以下はデフォルトでは記載がないがユーザーが追加できる項目です。
| MainSize | 幅,高さ。(UWSC本体の幅,高さを指定、デフォルトは220,61)。 |
|---|---|
| StopSize | 幅,高さ。(停止ボタンの幅,高さを指定、デフォルトは128,56)。 |
キーコード
以下はPlayHotKey、StopHotKey、RecHotKey、TrayHotKey、LunchMenuHotKeyで指定するホットキーの値をまとめた表です。
組み合わせるキーは交差する行と列の値を足した値がそのキーコードとなります。例えばF5のキーコードは20と3の交差する位置にあるので23(=20+3)となります。
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | |
|---|---|---|---|---|---|---|---|---|---|---|
| 0 | SPACE | F1 | F2 | F3 | F4 | F9 | F10 | F11 | F12 | ↑ |
| 10 | ↓ | → | ← | Q | W | E | R | A | S | D |
| 20 | F | End | Home | F5 | F6 | F7 | F8 | T | Y | U |
| 30 | I | O | P | G | H | J | K | L | Z | X |
| 40 | C | V | B | N | M | 1 | 2 | 3 | 4 | 5 |
| 50 | 6 | 7 | 8 | 9 | 0 |
| 0 | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| CTRL | WIN | ALT | SHIFT+CTRL | SHIFT+ALT | CTRL+ALT |
これらの表からPlayHotKey=1,2は組み合わせるキーが1、母体キーが2なので、ALT+F1が再生のホットキーとなります。
LUNCHMENUセクション
ランチメニューに登録した項目が管理されています。
| Position | ホットキーにてメニューを出す時の位置を指定。-1,-1にてカーソル位置。 |
|---|---|
| Tn(n=1,2,3,…) | スクリプト設定でスクリプトファイルに設定したタイトル。 |
| Sn(n=1,2,3,…) | 絶対パスもしくはC:\Program Files (x86)\UWSCからの相対パス |
| Pn(n=1,2,3,…) | 別プロセスで実行にチェックあり:1、チェックなし:0。 |
SCHEDULEセクション
| MaxNumber | 登録できるスケジュールの数を指定。デフォルト:40、最大400まで。 |
|---|---|
| WakeUp | 実行時に休止状態から復帰する。0:チェックなし、1:チェックあり。 |
| Sound | 実行時にBEEP音で知らせる。0:チェックなし、1:チェックあり。 |
| Sn(n=1,2,3,…) | 絶対パスもしくはC:\Program Files (x86)\UWSCからの相対パス。 -Rnのnに実行回数を指定。 |
| Mn(n=1,2,3,…) | タイマー設定。式による指定はNN=0。一回だけ実行は20210925:00:00:一回。時間指定は00:00:毎日:、00:00:毎週:金、00:00:毎月:6、1分毎、起動時、設定なしは空欄。指定Windowが現れた時はwin:TITLE:CLASS形式で指定。 |
| Pn(n=1,2,3,…) | 別プロセスで実行にチェックあり:1、チェックなし:0。 |
UWSC.LOG
UWSCメイン画面でプログラムを実行したときのログが出力されます。
OPTION指定でログ出力の設定変更ができます。
予約語、関数一覧
予約語とはプログラミング言語にあらかじめ定義されている特別な意味を持った単語のことです。予約語はプログラム内で変数や関数・クラス・制御構造などを定義するために使用されているため、プログラムの解釈にあたって特別な扱いを受けます。
予約語は、プログラムの開発者が自由に利用できる変数名や関数名とは異なり特別扱いをされるため、予約語を変数名等として利用することはできません。また、プログラムの開発者は予約語を自分で定義することもできません。
以下ではUWSCの予約語・関数を記載してます。
