FIST 操作説明書

1999.6.26
FIST
操作説明書
www.kadotani.com
Copyright and All Rights Reserved
平成 11 年 6 月 26 日
適応分野
・パソコンを全自動で、操作します。TCP/IP 等のネットワーク設定も一発。
・種類の異なるGUIアプリケーションを連続実行できます
・ 各種のソフトを配布した際その後のインストールダイアログの問いに
自動応答
・新作ソフトの紹介や見本市の自動デモ用に
・研究発表や国際会議、役員会でのパワーポイント等の自動操作に
・営業先でモバイルパソコンを自動操作させスムーズな商品説明ができます
・メール等の自動送受信
・音楽演奏ソフトなどの演奏順序の自動操縦
・その他無人で画面操作を自動代行します
・ 豊富なバッチ処理コマンド、平行実行処理機能搭載、画面操作によって
作成されたファイルも自動処理します
・ソフトハウスの生産効率を飛躍的にアップさせます。
・パソコンの自動シャットダウン機構もタイマで実行できます。
・作動中、ディスプレイの電源を切っておけるので省エネ効果大
・出張コストの大幅な削減をもたらします
汎用性が極めて高く、高度な操作が出来るのに、プログラミング知識を必要と
しません。FISTは超軽量なのでリソースを食いません。操作シナリオの
変更はスクリプトを配り直すだけ。
信頼性
アクション実行時に、フォーカス維持チェック機構及び緊急停止機構を搭載
高度な信頼性を誇っています。
このプログラムは操作対象のプログラムに影響を与えません。
1999-6-5
FIST開発者 廉谷三千彦。
-----目次------------
[ サンプルスクリプト ]
サンプルスクリプト ]
[ FISTの起動 ]
FISTの起動 ]
[ FISTの終了 ]
FISTの終了 ]
[ FISTスクリプトコマンド指定形式 ]
FISTスクリプトコマンド指定形式 ]
[ FISTスクリプトコマンド一覧 ]
FISTスクリプトコマンド一覧 ]
[ ログファイル指定行に指定できる機能 及び マウスポインタ座標表示機能 ]
ログファイル指定行に指定できる機能 及び マウスポインタ座標表示機能 ]
[ 著作権 著作権 ]
[ FIST スクリプト詳細仕様補足 スクリプト詳細仕様補足 ]
-----------------
[ サンプルスクリプト Ncmd1.txt]
サンプルスクリプト Ncmd1.txt]
このスクリプトはHTML文書を作成してプラウザを開いてみるものです。
"",0,"PASSWORD"
"",0,"Ncmd1.log"
"",0,"-"
"",1000,"-"
"",1,"!EXEc:\Program Files\Hidemaru\HIDEMARU.EXE"
"",1,"<html>{ENTER}"
"",1,"<body bgcolor={'}#ffffcc{'}>{ENTER}"
"",1,"<Font size=5>{ENTER}"
"",1,"<pre>{ENTER 2}"
"",1," -----*-- お勘定 ---*-----{ENTER 2}"
"",1,"大ジョッキ2{TAB 2} 1500 円{ENTER}"
"",1,"</pre>{ENTER}"
"",1,"</body>{ENTER}"
"",1,"</html>{ENTER}"
"",1,"%F"
"",1,"A"
"",1,"htest3.html{ENTER}"
"",1,"%F"
"",1,"X"
"",1,"!EXEe:\Program\netscape.exe"
"",2,"{TAB}file:///C|/WINDOWS\デスクトップ\ntest\htest3.html{ENTER}"
"",2,"!END"
-----------------
[ サンプルスクリプト Ncmd1.txt]
サンプルスクリプト Ncmd1.txt]
このスクリプトはロータスノーツを起動し、メールの宛先を指定し、自動送信しノーツを終了します。
"",
0,"PASSWORD"
"",
0,"-"
"",
0,"-"
"",500,"C:\notes\notes.exe"
"",
10 , "{RIGHT}"
"",
1 , "{ENTER}"
"パスワード",1 , "kadotanisachihiko"
"",
1 ,"{ENTER}"
"",
5 ,"%(C)"
"",
1 ,"E"
"宛先", 1 , "aoki"
"",
1 ,"{ENTER}"
"",
1 ,"{DOWN 3}"
"本文", 1 ,"おたより"
"",
1,"{DOWN}"
"",
1,"いつもお世話になっております。{ENTER 2}"
"",
1,"HPUX のオンラインマニュアルをいろいろ調べましたが、SIGTERM シ グナルが
{ENTER}"
"",
1,"OS か ら ユ ー ザ プ ロ セ ス を タ ー ミ ネ ー ト す る の に 使 用 さ れ る の は 、
SHUTDOWN{ENTER}"
"",
1,"以外は見つかりませんでした。{ENTER}"
"",
2,"%(A)"
"",
2,"E"
"",
2,"%(F)"
"",
1,"{DOWN 14}"
"",
1,"{ENTER}"
"",
1,"!END"
-----------------
[ FIST の起動 ]
の起動 ]
Fist を起動する前に、Fist.exe
を起動する前に、Fist.exe の存在する位置に Ncmd1.txt というファイル名をつけて、あながが
Fist で動作させたい内容のスクリプトを作成、保存してください。
FISTを起動すると、「Ncmd1.txt」(デフォルトの名称)のファイル名をFISTスクリプトファイルとみ
なしそこに記述されている内容をFISTスクリプトコマンドとして実行します。
いったんFISTを起動すれば、FISTスクリプト内から多重にFISTを起動することができますが、
この場合は任意のファイル名のFISTスクリプトコマンドを!RUNにより引数指定で実行させるこ
とができます。例 !RUNFist.exe fcmd.txt
また、スクリプトの実行が最終ラインに到達すると、継続行に継続スクリプトファイル名が指定して
あれば自動的にそのスクリプト名のスクリプトファイルを継続実行します。
ここへ指定するスクリプトファイル名も任意の名称が指定できます。
--------------------------------------
[ FISTの終了 ]
FISTの終了 ]
!ENDまたは、!STPにより終了します。
!STPは、現在実行中のスクリプトの停止と継続スクリプト指定があってもこれを実行せずキャン
セルします。強制終了する場合は、CTRLとALTキィを同時に押し、さらにDELキィを押すとプログ
ラムの強制終了メニュが表示されます。そのメニューで Fist を選択して終了ボタンを押して終了さ
せます。
--------------------------------------
[ FIST スクリプトコマンド指定形式 ]
スクリプトコマンド指定形式 ]
スクリプト行を構成しているのは、コメント部、実行待ち時間、実行部です。
コメント部と実行部は文字列としてダブルクオートで囲みます。
実行待ち時間はダブルクオートで囲みません。これらをカンマで区切ります。
下記参照。1ラインから4ライン目までは、特別な意味をもつ行なので必須です。
5ライン目以降、最終ラインまでは、スクリプトコマンドなら何行でも記述できます。
!END文以降は、何が記述されていても無視されますので、よく使用する部品をストックしておく
と便利です。
1ライン目(機能制限解除キィ指定)
2ライン目(ログファイル指定)
3ライン目(後続ファイル指定)
4ライン目(実行速度指定と起動)
5ライン目
最終ライン
"",0,"KEY1234"
"",0,"Ncmd1.log"
"",0,"-"
"",1000,"C:\WINDOWS\REGEDIT.EXE"
"",3,"%EF"
・
・
・
"",1,"!END"
必須行(1ライン目から4ライン目)についてのルール
●1ライン目(機能制限解除キィ指定)
FISTは試供品と本製品を区別するために、本製品として動作させるために
機能制限解除キィいわゆるパスワードを指定する必要があります。
ライセンスされたときに通知されたライセンスキィをここへ指定してください。
試供品としてお使いになる場合はパスワードの替わりに GUEST を指定してください。
"",0,"GUEST"
●2ライン目(ログファイル指定)
(1)ログファイルへログを出力する及びプロセス名の表示指定
(2)実行状況をタスクバーへ表示する
(3)マウスポインタの座標をタスクバーへモニタするツールの起動
などの機能を指定します。
[ ログファイル指定行に指定できる機能 及び マウスポインタ座標表示機能 ]参照
●3ライン目(後続ファイル指定)
スクリプトファイルの実行が終了するとき、引き続き連続して別のスクリプトファイルを実行するよう
指定できる行です。上記の例は、継続するスクリプトの指定はないものです。
指定する場合、はスクリプトファイル名とその前の値には1を指定します。
例) "継続",1,"Ncmd2.txt"
●4ライン目(実行速度指定と起動するアプリケーション指定)
この行に指定する値は、スクリプトを処理する実行速度です。単位はミリセカンドで、
上記の例では1000なので1秒毎に次のスクリプトを実行せよという指定です。
この値を小さくすればするほど実行速度は速くなります。ここで一秒刻みで実行指定しても、時間
のかかる処理がある場合待つ必要があります。そこで4ライン目以降の値は、どれだけの時間待
つかを指定します。
上記の例では、アプリケーションが完全に起動するまで3秒待つという意味です。言い換えればア
プリケーションを起動した 3 秒後に次のアクションを実行するよう指定するものです。また、その次
の行がたとえば1なら、前回のアクションから1秒後に実行することを意味します。また、この行は
起動したいアプリケーションを指定できます。
アプリケーションの実行は、!RUNや!EXEで起動しますが、ここの行へはこの指定をする必要
がありません。直接、アプリケーションへのパスを指定するだけです。
注意、ここに起動するアプリケーションはスクリプトの実行開始直後に起動されます。
もし、アプリケーションを起動する前に何かを処理したい場合など起動したくない場合は、下記の
ようにマイナスを先頭に指定すれば、アプリケーション起動をしない指定となります。
"",1000,"-C:\WINDOWS\REGEDIT.EXE" 又は "",1000,"-"のどちらも起動しない指定です。
(捕捉)スクリプトコマンドによるアプリケーションの起動方法は、!RUNと!EXEがあります。両
者の違いは!RUNはアプリケーションを起動するとき引数が指定できますが、!EXEでは引数
の指定ができません。また、!RUNによる起動はアプリケーションの起動完了を待つことなく次の
スクリプトを実行します。!EXEでは、アプリケーションの起動が完了するまで次のスクリプトの実
行を待つ、という特徴があります。必要に応じて使い分けることができます。!EXEの次に実行す
るスクリプトの待ち時間はアプリケーションの起動完了後さらなる待ち時間という指定になることに
注意してください。!EXEでのアプリケーションの起動直後に次のスクリプトを実行する場合通常
は1でよいでしょう。
●5ライン目から最終行
FISTスクリプトコマンドであれば行数に制限なく記述できます。
[ FIST スクリプトコマンド一覧 ]参照
また、実行待ち時間の値は1以上の値を指定してください。
ただし、スクリプトコマンドは複数のスクリプトファイルに分割して連続起動
するようにした方が部品としてのスクリプトとして再利用性がよくなりますので
おすすめします。
●最終ライン
"",1,"!END"
スクリプトの最終ラインを意味します。ここでの値1は最後より一つ前のスクリプトコマンドを実行し
てからどのくらい経ってFISTを終了するかの時間を指定しています。
通常は1で不都合はありませんが、継続スクリプト実行の指定がある場合、そのタイミングをこの
値で調整することが出来ます。継続スクリプトは!ENDの次に実行されるからです。
---------------------------------------
[ FIST スクリプトコマンド一覧 ]
FIST スクリプトコマンド一覧 ]
(A)
キーストローク自動入力機能
キーストローク文字をアプリケーションへ送信します
"abcdef"
●キーストロークに関する表記は後述の「キーストロークの指定方法」参照
(B)アプリケーションの直接呼び出し機能
!RUN
アプリケーションの起動 (非同期起動)
"!RUN
!RUNC:\WINDOWS\CALC.EXE"
!RUN
!EXE
アプリケーションの起動(同期起動)
"!EXE
!EXEe:\Program\netscape.exe"
!EXE
(C)ウインドウ制御機能
!GFC
実行中のアプリケーション画面の切替
"!GFC
!GFC エクスプローラー"
!SH1~SH5
!SH1
カレント画面のハンドラを保存する MAX 5 個
"!SH1
!SH1"
!SH1
!SWT
画面プロセス名の変更実行
"!SWT
!SWT(SH1)G1"
!SWT
!ICZ
画面を一時的にアイコン化しておく
"!ICZ
!ICZ(SH1)"
!ICZ
!OPI
アイコン化しておいた画面を呼び出す
"!OPI
!OPI(SH1)"
!OPI
!ZOO
画面を最大化(Zoom)する
"!ZOO
!ZOO(SH1)"
!ZOO
!MVW
画面の表示位置を変更する(x,y 軸)
(スクリーン座標を調べるにはログ指定に50を指定して FIST を実行
してください。 マウスポインタのあるスクリーン座標がタスクバーに表示
されるようになります。)
"!MVW
!MVW(SH1)230,180"
!MVW
!MWW
画面の表示サイズを変更する(横幅,高さ)
"!MWW
!MWW(SH1)300,300"
!MWW
(D)マウス制御機能
(スクリーン座標を調べるにはログ指定に50を指定して FIST を実行
してください。 マウスポインタのあるスクリーン座標がタスクバーに表示
されるようになります。)
!MMV
指定座標上にマウスポインタを移動させる
"!MMV
!MMV160,296"
!MMV
!MLC
指定座標上でマウスを左クリックする
"!MLC
!MLC160,296"
!MLC
!MDC
指定座標上でマウスをダブルクリックする
"!MDC
!MDC160,296"
!MDC
!MRC
指定座標上でマウスを右クリックする
"!MRC
!MRC408,743"
!MRC
!MLK
マウスポインタを待機エリアでロックする
"!MLK
!MLK"
!MLK
!MLD
指定座標上でマウスの左ボタンを押したままにする
"!MLD
!MLD408,743"
!MLD
!MLU
マウスの左ボタンを押した状態を解除する
"!MLU
!MLU208,350"
!MLU
(E)条件判定機能
!CFC
実行中のアプリケーション画面の切替完了確認
"!CFC
!CFC エクスプローラー"
!FCK
ファイルが存在しなければダイアログ表示
"!FCK
!FCKc:\temp\txt.txt"
!FCK
!SCF
ファイルの有無をテストし結果を一時的に保持する
"!SCF
!SCFc:\temp\txt.txt"
!SCF
!RIF
結果が TRUE の場合指定したスクリプトを実行する
"!RIF
!RIFc:\Fist\Fist.exe
Retry1.txt"
!RIF
!GF1
ファイルの有無をテストし結果を保持する
"!GF1
!GF1c:\temp\txt.txt"
!GF1
!GF2
ファイルの有無をテストし結果を保持する
"!GF2
!GF2c:\temp\txt.txt"
!GF2
!CFI
ファイルの状態が変化していなかったら実行する
"!CFI
!CFIc:\Fist\Fist.exe
Retry1.txt"
!CFI
!CFJ
ファイルの状態が変化していたら実行する
"!CFJ
!CFJc:\Fist\Fist.exe
Retry1.txt"
!CFJ
!CFX
条件判定で処理を一時停止し別タスクの応答を待つ
"!CFX
!CFX 同期処理の応答待ちです"
(F)メッセージ画面表示機能
!MBX
処理を一時停止し、オペレータの応答を待つ
"!MBX
!MBX[YES]ボタンで継続します"
!MBX
!MSG
FIST 画面へ任意のメッセージをセットする
"!MSG
!MSG しばらくおまちください。"
!STD
FIST 画面を標準
"!STD
!STD"
!STD
!MIN
FIST 画面をアイコン化する
"!MIN
!MIN"
!MIN
!MAX
FIST 画面を最大の大きさで表示する
"!MAX
!MAX"
!MAX
(G)バッチ処理機能
!KIL
ファイルを削除
"!!KILc:\temp\work\*.bak"
KIL
!RMD
ディレクトリの削除
"!!RMDc:\work\temp"
RMD
!MKD
ディレクトリの作成
"!MKD
!MKDtemp2"
!MKD
!FCY
ファイルのコピー
"!FCY
!FCYfromtemp.txt,totemp.txt"
!FCY
!NAM
ファイル名の変更
"!NAM
!NAMoldname.txt,newname.txt"
!NAM
!CHD
カレントディレクトリの変更
"!!CHDtemp"
CHD
!CHV
カレントドライブの変更
"!!CHVe"
CHV
(H)連続運転サポート機能
!N**
ユニークなファイル名を自動作成する
"!N**
!N**.txt"
!N**
!N*G
自動作成したファイル名を取得しキィ入力する
"!N*G
!N*G"
!N*G
(!N*G) 自動作成したファイル名を取得する
!MKD,!FCY,!NAM へも指定可能
(I)指定時間経過後に予定したアクションを実行させる機能
!DWN1
電源を切る直前の状態にする
"!DWN1
!DWN1-0:03:30"
!DWN1
!DWN2
シャットダウン後に再起動する
"!DWN2
!DWN2-1:15:30"
!DWN2
!DWN8
オートパワーオフ機能を呼び出し電源を切る
"!DWN8
!DWN8-14:50:55"
!DWN8
!STA
指定時間経過後にスクリプト(sta.txt)を実行する
"!STA
!STA0:03:30"
!STA
!SCL
指定時間経過後にスクリプトを停止する
"!SCL
!SCL0:03:30"
!SCL
(J)スクリプト実行制御機能
-
非実行文にする(先頭にマイナスをつける
先頭にマイナスをつける)
先頭にマイナスをつける
"-!RUNC:\WINDOWS\CALC.EXE"
!CTM
実行速度変更
"!CTM
!CTM3000"
!CTM
!STP
以降の実行文と連結ジョブをすべてキャンセルする
"!STP
!STP!RUNC:\WINDOWS\CALC.EXE"
!STP
!END
スクリプトの終了と後続スクリプトの起動
"!END
!END"
!END
-------------------------------------
「キーストロークの指定方法」
キーストロークは文字列としてダブルクオート("")で囲んで指定します。
特殊機能文字を通常の文字として扱う場合の指定
下記の文字はスクリプトでは特別な意味を持っています。これらを使用する場合は中括弧({ })で
囲んで指定してください。
プラス記号
パーセント
左括弧
+
%
(
キャレット
チルダ
右括弧
^
~
)
たとえば、プラス記号は {+} のように指定します。文字として中括弧を渡すには、{{} または {}} を
使います。
キーストローク文字列中にダブルクオートを使用する場合次のように指定してください。
シングルクオートを中括弧で囲んで指定します。{’}
これでダブルクオートとしてキイストロークされます。
Enter キーや Tab キーなどは、動作をおこなうキーとして中括弧で囲んで指定します。
[キー]
[ スクリプトへの指定方法] [キー]
[ スクリプトへの指定方法]
BackSpace
{BS}
Ctrl + Break
{BREAK}
CapsLock
{CAPSLOCK}
Del 又は Delete
{DEL}
↓
{DOWN}
End
{END}
Enter
{ENTER}
Esc
{ESC}
Help
{HELP}
Home
{HOME}
Ins または Insert
{INS}
←
{LEFT}
NumLock
{NUMLOCK}
PageDown
{PGDN}
PageUp
{PGUP}
PrintScreen
{PRTSC}
→
{RIGHT}
ScrollLock
{SCROLLLOCK}
Tab
{TAB}
↑
{UP}
F1
F2
{F2}
{F1}
F3
{F3}
F4
{F4}
F5
{F5}
F6
{F6}
F7
{F7}
F8
{F8}
F9
{F9}
F10
{F10}
F11
F12
{F11}
{F12}
F13
F14
{F13}
{F14}
F15
F16
{F15}
{F16}
Shift キー、Ctrl キー、または Alt キーと他のキーとの組み合わせを指定するには、
通常のキー コードの前に次のコードを単独、または組み合わせて記述します。
[キー]
Shift
Ctrl
Alt
[スクリプトへの指定方法]
+
^
%
Shift キー、Ctrl キー、Alt キーを押しながら他のキーを押す操作を指定するには、
キーのコードを括弧で囲みます。
Shift キーを押しながら A と B を押す操作を指定するには、"+(AB)
+(AB)"
+(AB) と指定します。
Shift キーを押しながら E を押し、その後 Shift キーを離して C を押す操作を指定するには、
"+EC
+EC"
+EC と指定します。
同じキー ストロークの繰り返しを指定するには、キイとともに繰り返しの数を指定します。key と
繰り返し数の間には必ず半角のスペースを置いてください。
{RIGHT 15} は → キーを 15 回押すことを意味し、 {g 10} は、G キーを 10 回押すことを意味
します。
(制限事項)
Copy キーは指定できません。
--------------------------------------
[ ログファイル指定行に指定できる機能 及び マウスポインタ座標表示機能 ]
ログファイル指定行に指定できる機能 及び マウスポインタ座標表示機能 ]
ログファイルが指定されると起動されるたびに指定のファイルへ追加書き込みされます
また、ログファイル指定行に’50
50’を指定した場合、マウスポインタを追跡し、その座標をタスクバ
50
ーへ表示するツールに切り替わります。マウス制御機能に指定する座標を求めるのに便利です。
( ログ指定行のバリエーション )
"ログ",0
0,"-"
ログファイルを作成しません
"ログ",0
0,"Ncmd1.log"
ログファイルを作成しません
"ログ",1
1,"Ncmd1.log"
Ncmd1.log へログを出力します
"ログ",2,
2,"Ncmd1.log"
2,
ログの先頭にプロセス名を表示させます
プロセス名を表示させます。
プロセス名を表示させます
!CFC するときに必要なプロセス名を取得できます。
"ログ",3
3,"Ncmd1.log"
タスクバーに実行中のスクリプト行のコメント部を表示します。
タスクバーに実行中のスクリプト行のコメント部を表示します
スクリプトの実行状況がよくわかります。
"ログ",4
4,"Ncmd1.log"
タスクバーに実行中のスクリプト行の行番号を表示します。
タスクバーに実行中のスクリプト行の行番号を表示します
スクリプトの実行状況がよくわかります。
"ログ",50
50,"Ncmd1.log"
50
スクリーン座標をタスクバーへ表示するツールを起動します。
スクリーン座標をタスクバーへ表示するツールを起動しま
マウスポインタの座標を求めるのに便利です。
[ 著作権 著作権 ]
FISTは下記の著作権登録により構成されています。これら著作権及びFIST本体の
著作権は1999年7月16日現在 廉谷 三千彦(かどたに さちひこ)
が所有しています。
P第 6387号-1,P第 6388号-1
著作者への連絡先
Email kadotani@kadotani.com
スクリプト作成についての技術的質問等にお応えします。
その時に購入先とパスワードを明記してください。
[ FIST スクリプト詳細仕様補足 スクリプト詳細仕様補足 ]
次ページより、特に用法について注意を要するものについて補足します。
命 令
!KIL ( Kill File )
機能説明・使用法
ファイルの削除を行います。
■個別ファイルの削除
"!KIL ファイル名"
■一括削除
"!KIL*.*"
!RMD ( Remove Directory )
デイレクトリの削除を行います。
詳細仕様
参 考
!KIL*.*などワイルドカードも指定できますが、
削除対象はファイルですので、ディレクトリが含まれてい
る場合はそのディレクトリは削除しません。
ディレクトリを削除するには、!RMD を使用します。
また、デイレクトリを削除する場合はその下のファイル
はあらかじめ削除しておく必要があります。
デイレクトリ階層が深く、それぞれのデイレクトリにファイ
ルが点在するような場合、これらをまとめて削除するに
は、エクスプローラーを起動し、削除するデイレクトリを
検索させ、その配下のファイルをすべて選択して、
削除を実行します。
エクスプローラにディレクトリとファイルを一括削除させる
"!RUNC:¥windows¥explorer.exe"
"%T"
"FF"
"*.*"
"{TAB}"
"TargetDirectory"
"{ENTER}"
"%EA"
"%FD"
"{ENTER}"
デイレクトリを削除する場合はその下のファイルはあらか
じめ削除しておく必要があります。
!KILの使用法も参考にしてください。
!RUN でプログラムを起動すると、そのプログラムが、
完全に起動されるまで待ちません。この為次のアクション
までは充分に長い時間を指定します。(非同期起動)
プログラムが完全に起動されるのを待つには、!EXEを
使用します。これを用いた場合、次のアクションまでの時
間指定は、起動「完了後」何秒という意味になります。
他にプログラムを起動する方法は、エクスプローラーの
検索機能を利用して、起動させることもできます。
この方法の最大のメリットはパスを指定する必要がない
ので汎用性の高いスクリプトが作れる事です。また、
デメリットは検索する時間を必要とする事です。
注意!EXEには起動引数を指定できません。
質問メッセージを表示し、オペレータが質問に答えるまで
スクリプトの実行を一時停止します。
YES と NO のボタンを持つメッセージが表示されます
YES を押すと、スクリプトは引き続き実行されますが、
NO を押すと完全に停止します。
スクリプトの実行を続けるかどうかの意志をたずねる
目的に利用できます。
FIST 自身はフォアグランド画面を必要しませんので、
デフォルトとして起動直後にアイコン化されています。
しかし、多くのメッセージを表示したいときなどに必要に
応じてメッセージをセツトして表示することが
できます。!STD、!MAX といっしょに使用します。
!MIN で画面をアイコン化できます。
!MBX との違いは、表示された画面にはボタンがあのま
せん。また、多くのメッセージを見易く表示できることで
す。例
!MSG これからデモを開始します。
!MAX
!MSG 提供は株式会社とら商事でございます。
!MIN
■ディレクトリの削除
"!RMD デイレクトリ名"
!RUN ( Run )
プログラムの起動を行います。
!EXE ( Execute )
■プログラムの起動
"!RUN プログラム名"
"!EXEプログラム名"
!MBX ( Message Box )
スクリプトの実行を意図的に停止
します。
■メッセージダイアログの表示
"!MBX メッセージ"
!MSG ( Set Message )
!STD ( Standardize )
!MAX ( Maximize )
!MIN ( Minimize )
FIST画面にメッセージをセット
します。
■メッセージのセット
"!MSG メッセージ"
命 令
!GFC ( Get Focus )
機能説明・使用法
詳細仕様
参 考
画面のフォーカスをカレントにし
ます。
!GFC はすでに画面上に表示されているが、別の画面
の後ろに隠れている画面を手前に出すときに使います。
正確な名称を指定する必要があります。
正確なタイトル名称はログファイルの指定で「2」を
指定して実行するとフォーカスの名称が表示されます
ので、その部分をコピーして指定してください。
また、タイトル名はアプリケーションによっては
変化する場合がありますので、注意してください。
また、取得に成功したかどうかは、!CFC でチェックしま
す。
■フォーカスの取得
"!GFC 画面タイトル名"
!CFC ( Check Focus )
画面のカレントフォーカスが
正しく取得されているかチェック
します。
頻繁にフォーカスを切り替えたり、アイコン化や標準サイ
ズに戻すなどのダイナミックな操作を行う場合は、
!SH1 を使用します。
!CFC は!GFC により取得したフォーカスが正しく取得
されているかチェックし、指定したタイトル名とフォーカス
の名称が違っていれば、YES、NO ボタン付きのダイア
ログが表示され、スクリプトの実行を中断します。
正確なタイトル名称はログファイルの指定で「2」を
指定して実行すると表示されますので、その部分を
コピーして指定してください。
また、タイトル名はアプリケーションによっては
変化する場合がありますので、注意してください。
カレントフォーカスのハンドルを保持しておき、
画面のタイトル名の変更、アイコン化、標準サイズの
復元の際にこのハンドラを指定します。
SH1 から SH5 まで、同時に使用できます。
再利用も任意です。
!GFC や!CFC が行いやすくなるように、判別しやすい
画面タイトルに変更します。また、スクリプトをまたいだ
後ではSH1ハンドラは引き継がれませんが、SWTに
よって変更された画面を呼び出し、ふたたびSH1する
ことでフォーカスの維持管理が保たれます。
FISTで同期処理を行うためにはなくてはならないもの
です。
■フォーカスのチェック
"!CFC 画面タイトル名"
!SH1 ( Save Handler )
カレントフォーカスの画面に対す
るハンドラを保存します。
■ハンドラの保存
"!SH1"
!SWT ( Set Window Title )
画面のタイトルを変更します
■画面タイトルの変更
"!SWT(SH1)Gamen1"
!ICZ ( Iconize )
!OPI ( Open Icon )
!ZOO ( Zooming )
SH1 に対応する画面を
コントロールします
■画面のアイコン化
"!ICZ(SH1)"
■アイコン化された
画面の呼び出し
"!OPI(SH1)"
■画面の最大化
"!ZOO(SH1)"
SH1 に対応する画面をコントロールします
あらかじめ SH1 を実行しているものに対して有効です。
命 令
!N** ( Name )
機能説明・使用法
ユニークな名称を生成します
■名称の生成
"!N**"
■拡張子付きの名称の生成
"!N**.html"
!N*G ( Recall Name )
以前に N**で生成した
ユニークな名称を取り出します
■名称の取り出しキィ入力します
"!N*G"
■!MKD で指定できます
"!MKDc:temp¥!N*G"
■!FCY の第二オペランドで
使用できます。
"!FCYtext.txt,c:¥temp¥!N*G"
■!NAM の第二オペランドで
使用できます。
"!NAMtext.txt,!N*G"
詳細仕様
参 考
N**により、N17024032 のように名称が作成されます。
N**.html とすれば、N17024032.html となります。
この名称は一時的に記憶され、!N*G することにより
呼び出して使用することができます。
生成された名称はメモリへ保持されスクリプトファイルの
4ステップ目からそのスクリプトを抜けるまでの範囲で
保持されます。
24時間以内でのみユニークになります。それ以上の
連続運用は、ファイル名称の変更!REN で置き
換えたり、ファイルを別のディレクトリへ移動や削除
などするスクリプトにしてください。
以前!N**した名称について、この命令で、N*G.html と
した拡張子を任意に指定する事が出来ます。
また、!N**.html などとした場合、!N*G とすれば、
拡張子付きの名称が取り出されます。
取り出した名称は KEY 入力と同じストロークで出力
されます。(!N**も参考にしてください。)
!N*G を単独で使用するとキイストロークとして
自動生成名称をキィ入力文字として出力します。
例
"!N**.html" (拡張子付きでメモリへ保存)
"!N*G"
(取り出し)
"!N**"
(拡張子なしでメモリへ保存)
"!N*G”
(取り出し)
!MKD 及び,!FCY,!NAM の第二オペランドとして指定
することができます。
N*G で前回とは、実行中のスクリプトファイルの
4ステップ目からそのスクリプトを抜けるまでの範囲内
です。
!N**をあらかじめ実行しておく必要があります。
!N**は、ログファイルの指定でも使用できますが、
ログファイルの指定での!N**の使用は!N*G には
引き継がれませんので、実行文で実行してください。
実行結果
N18004018.html
N18004018.html
N18004023
N18004023
命 令
!FCK ( File Check )
機能説明・使用法
詳細仕様
参 考
ファイルの存在チェックを行い、
存在しなければダイアログ画面
を表示します。
指定したファイルが存在している場合は、なにも行い
ません。
存在しない場合、処理を一時中断し、キャンセルするか、
無視して継続するかの意志確認のダイアログ画面を
表示します。
フェイルセーフ機能のうち最も単純な方法です。
!SCF は!RIF(Run If Flag On)と共に用い、SCF で、
ファイルが存在しない結果が出ると、後の RIF では、
指定したスクリプトを実行します。高度なフェイルセーフ
トランザクションを呼び出すことができます。
例
ファイルセーフ機能については下記も参照ください。
!SCF,!RIF,!GF1,!GF2,!CFI
■ファイルの存在チェック
"!FCKc:¥temp¥text.txt"
!SCF ( Set Check Flag )
ファイルの存在チェックを行い、
その結果を一時的に保持する。
!RIF (Run If flag Is ON )
ここで保持した結果は、!RIF
の実行に利用されます。(SCF の結果で存在しない場合
FLG=ON)
■ファイルの存在テスト
"!SCFc:¥temp¥text.txt"
■存在しない時スクリプト実行
"!RIFFist.exe safe.txt"
"!SCFxxx.txt"
"!RIFFist.exe txt.txt"
"!MBXPlease wait"
例
“!SCFc:¥temp¥text.txt”
“!RIFFist.exe 障害復旧処理.txt”
ここで、RIF の呼び出しは SCF の直後でなくとも
かまわないが、別のスクリプトファイルへ状態は引き継
がれない。
上記の例は、障害復旧の処理を Fist にそのスクリプト
名称をパラメータを渡すことで呼び出して実行させてい
る。
“!SCFc:¥temp¥text.txt”
“!RIFFist.exe 障害復旧処理.txt”
“!MBX 障害処理中”
ファイルセーフ機能については下記も参照ください。
!FCK,!GF1,!GF2,!CFI
RIFは SCF の直後でおこなわなくてもかまいません。
スクリプト内で次の SCF が実行されるまで情報は保持
されます。
命 令
機能説明・使用法
!GF1( Get File Condition 1 )
ファイルの有無及び更新時間を
チェックし、変化がなければ指定
したスクリプトを実行する。
詳細仕様
参 考
トランザクションの開始と終了でそれぞれGF1、GF2でファイルの状態をテストし、その結果をもとに CFI では
指定されたスクリプトを実行するかしないか判定する。CFIでどのような判定をするかは下記の表をご覧ください。
!GF2( Get File Condition 2 )
!CFI
( Compare File Information)
!GF1 を実行したあと、なんらか
の処理を行う、その処理の状態
はGF1で指定したファイルにな
んらかの変化があるという前提
があれば、この変化があったか
どうかを GF2 の実行で情報収集
します。
CFI判定実行表
GF1 の結果
GF2の結果
存在しない
存在しない
無変化
存在する
存在する
時刻無変化
指定された
ファイル
の状態
について
!CFX
( MessageBox displays after
Compare File Information)
■変化ある場合スクリプト実行
"!CFJFist.exe safe.txt"
■!CFX は CFI と同じ判断をし
て、変化があればダイアログ
を表示し、処理を中断します、
この間、別のFISTが別の処理
を完了させて、このダイアログの
ボタンを押せば、同期処理が
可能になります。変化がなけ
ればこのダイアログボックスを
表示しません。
実行する
存在しない
存在する
変化あり
存在する
存在しない
変化あり
GF1 の結果
GF2の結果
総合判定
存在しない
存在しない
無変化
存在する
存在する
時刻無変化
実行しない
CFJ 判定実行表
■変化がない場合スクリプト実行
"!CFIFist.exe safe.txt"
!CFJ
( Compare File Information
CFI の動作
時刻変化
これらの情報をもとに CFI で
指定したスクリプトを実行するか
しないか判定されます。
■ファイルの状態テスト
"!GF1c:¥temp¥text.txt"
-- なんらかの処理
"!GF2c:¥temp¥text.txt"
総合判定
指定された
ファイル
の状態
について
CFJ の動作
実行しない
時刻変化
存在しない
存在する
変化あり
存在する
存在しない
変化あり
ファイルセーフ機能については下記も参照ください。
!FCK,!SCF.!RIF
実行する
TIPS
FISTのスクリプトを組みやすくするには
たとえば、ネットワークの設定やごみ箱を操作したりするには、まずショートカツトをあらかじめ作成しておき、
これらをエクスプローラで検索実行させます。
また、エクスプローラで検索した後、それがフォルダであるとき、そのフォルタ゜の内容がアイコンの拡大表示だった場合、
意図したファイルを実行することに失敗するのをあらかじめ防止するため、[表示]-[詳細]に都度するようにして置くこと
をおすすめします。
FISTからFISTを呼び出すことができます。
並列処理ができます。たとえば、画面処理専門のスクリプト、バックグラウンドでバッチ処理を実行させます。
スクリプトを機能的に分割して管理することで、汎用性、管理効率がよくなります。
スクリプトには、任意でコメントを付加できますが、必要最小限にしてください。長いコメントはパフォーマンスに影響
を与えます。また、ログの指定も不要なら出力しないほうがリソースの節約になります。
ログの設定はテストに役に立つモードを用意しましたので、ログの章をご覧ください。
スクリプトのテスト実行は、最初は実行間隔を長くして、安定したらだんだん短くしていきます。
実行速度を早くすればするほど、リスクは高くなります。現実的には、0.5 秒以下のスヒ゜ードにする場合、
マシン性能に大きく依存しますので、充分なテストを実施してください。ウインドウズの動作が間に合わなくなる
場合があり、フォーカスの取得に失敗する危険が大きくなります。
---------------------------------------
[ FIST スクリプトコマンド一覧 追加編 ]
追加編 ]
下記はマニュアル本編の機能説明に漏れているものです。
つつしんでお詫び申しあげます。
(E)条件判定機能
!WGF
指定さけたタイトルの画面が出現するまでスクリプトの実行を待ちます
"!WGF
!WGF 処理中"
!WLF
指定さけたタイトルの画面が出現している間はスクリプトの実行を待ちます
"!WLF
!WLF 処理中"
WGF Wait Until Get Focus Sucessfully
WLF Wait Until Lost Focus
---------------------------------------
[ トラブルシューティング ]
トラブルシューティング ]
スクリプトのテスト中では様々な要因、たとえばスクリプトをやむを得ず中断させたり、
を繰り返すうちに、FISTを起動してもなにも反応がしなくなることがあります。
この場合、CTRL+ALT+DEL を押して、プログラムの強制終了画面の中に停止したはずの
FIST が存在していないかチェックしてください。存在していれば強制終了してください。
正常に起動できるようになります。
その他の要因でシステムが不安定になる場合は、システムを再起動してください。