トップ ページ > 強引(強行)自動化 > MS ScriptIT

MS ScriptIt

(注)マイクロソフトはScriptItの技術サポートをしないそうです。
ネタ元→http://www.microsoft.com/technet/archive/winntas/downloads/scriptit.mspx?mfr=true
ダウンロード→http://www.dx21.com/SCRIPTING/INDEX.ASP


使用方法

実行方法:Runコマンドから以下をタイプしてください:
   Scriptit.exe スクリプトファイル.ini

※ScriptItスクリプト処理エンジン、ScriptIt.exe、および有効なスクリプトファイル(iniファイル)を必要とします。
※指定された処理を実行することができるユーザーで実行しなければなりません。

iniファイルの記入例:
[SCRIPT]
run=notepad.exe
無題 - メモ帳=Hello World

#Notepadを実行。
#タイトルバーが無題– メモ帳であるウィンドウに、[Hello World]をタイプする。

スクリプトファイル形式

基本的なScriptItスクリプトファイル:

[SCRIPT]
run=command
runwait=command
WindowTitle=keystrokes
WindowTitle<+text>=keystrokes
mkfile filename.ext=fileline
REM comment
[ADLIB]
WindowTitle=keystrokes
WindowTitle<+text>=keystrokes


構文
run=<'><@>fileName.ext
runwait=<'><@> fileName.ext


=右のコマンドを実行。
`コマンドが内部のコマンドであると判断します。[%ComSpec% /C + コマンドライン]となります。
タイトル=`コマンドとすると、コマンドの実行結果がウィンドウにタイプされます。
また、実行結果は一度%TEMP%\~TMP~に保存さます。
処理中にCtrl+Break等で終了した場合、このファイルが残り、次回実行時に不具合が出ます。
したがって、やむなく処理を中断する場合はこのファイルを消す事を勧めます。
@WinBatchコマンドとして系列の残りを解釈します。
タイトル or
タイトル+テキスト
titleに指定する文字列は、一部で構いません。
同じ窓のタイトルで開いている連窓があるとは、(+)を使用することによって、窓を特定することができます。
タイトルの確認は、alt+tabで表示されるウィンドウの下部で確認出来ます。


@
ScriptItは評価のためにアンパーサンド(@)キャラクタと共に始まるどんな タイトル系列価値もWinBatch Interpreterに通過します。 そして、WinBatch機能のリターン値はキーストロークとして指定された窓に通過されます。
#
ナンバー記号(#)は主要なデリミタ(区切り記号)です。

[SCRIPT]セクション

各スクリプトファイルはセクションタグ[SCRIPT]で始まります。
[SCRIPT]セクションの中では、ScriptItは4つのタイプを認識します:

run or runwait 有効なMS-DOSコマンド・有効なWinBatchコマンドを指定してください。(系列はexecutablesを始動します)。runwaiteは、実行したウィンドウが閉じられるまで次の処理を行いません。
ウィンドウタイトル or タイトル+テキスト ウィンドウのインスタンスを特定して、指定されたキーストロークを送ります。
mkfile ファイル作成。ファイル名によって指定されるようにスクリプトが新しいファイルを作成し、filelineに指定された文字列を追記します。
REM コメント行。
runまたはrunwaitでコマンドを実行する場合は、コマンド名(必要であればフルパスで)を指定して下さい。
また、必要であれば引数も指定します。
環境変数を使用する場合には、%変数名%とします。

[ADLIB]セクション

例外時に発生するポップアップやダイアログへの対処として使用されます。
したがって、title=の処理のみサポートします。
[SCRIPT]セクション終了迄に[ADLIB]セクションに記載された実行条件が発生しなかった場合には、無視されて終了します。


チルダコマンド

チルダコマンド 記述

~(チルダのみ)

{ENTER}と同じ

~exit

すぐに、スクリプトを出ます。 例えば:
無題の– メモ帳=~exit
Untitled–を見るとき、出るようにあなたのスクリプトに言います。 ノートパッドウインドウ。

~wait スクリプト(これは##というのを使用するのと同じである)の実行の2番目に5秒待ちます。
~winwaitclose ウィンドウが閉じられるまでスクリプトがポーズします。
~winwaitactive ウィンドウがアクティブになるまでスクリプトがポーズします。
~winclose ウィンドウを閉じます。
~winhide 指定したウィンドウを見えなくします。
ウィンドウはありますが、ユーザはそれを見ることができません。
~winshow ~winhideで見えなくしたウィンドウを表示します。
~winmin ウィンドウを最小化します。
~winmax ウィンドウを最大化します。

特殊なキーストローク

キー SendKey同等物 記述
~{~} チルド(~)を送ります。
! {!} 感嘆符(!)を送ります。
^ {^} 脱字記号(^)を送ります。
+ {+} プラスサイン(+)を送ります。
{ { { } 左の支柱を送る、({)
} { } } 右の支柱を送る、(})
Alt {ALT} Altキーストロークを送ります。
Backspace {BACKSPACE} or {BS} Backspaceキーストロークを送ります。
Clear {CLEAR} フィールドをクリアします。
Delete {DELETE} or {DEL} Deleteキーストロークを送ります。
{UP} Up Arrowキーストロークを送ります。
{DOWN} Down Arrowキーストロークを送ります。
{LEFT} Left Arrowキーストロークを送ります。
{RIGHT} Right Arrowキーストロークを送ります。
End {END} Endキーストロークを送ります。
Enter {ENTER} or ~ Enterキーストロークを送ります。
Escape {ESCAPE} or {ESC} Escキーストロークを送ります。
F1 から F16 {F1} から {F16} 適切なFunctionキーストロークを送ります。
Help {HELP} ヘルプ(F1)、キーストロークを送ります。
Home {HOME} ホームキーストロークを送ります。
Insert {INSERT} or {INS} Insertキーストロークを送ります。
Page Down {PGDN} ページDownキーストロークを送ります。
Page Up {PGUP} ページUpキーストロークを送ります。
Space {SPACE} or {SP} Spacebarキーストロークを送ります。
Tab {TAB} Tabキーストロークを送ります。

AltControl、または Shiftとの組み合わせは、以下の後にキーを指定して下さい。
Key Precede With
Altキー !
Controlキー ^
Shiftキー +
例:
Alt+Sは、!s
Ctrl+シフト+F7^+F7

{キー 数字}の様に、スペースの後に数字を入れることによって、キーを数字と同じ回数押す処理を行います。
例:
{* 20}はアスタリスクを20回タイプします。
{DOWN 8}は下を8回タイプします。

MkFile

構文
mkfile filename.ext=fileline
パラメタは以下の通りです。
filename.ext…このパラメタは作成するファイル名を指定します。
fileline…ファイルに書く、または追加する文字列を指定します。

※複数行追記したい場合は、同一の[SCRIPT]セクション内で目的の行分記入します。一回目のmkfileは、既存のファイルに対しても上書きを行います。