基本的に、OS/2 コマンドファイルとしての REXX スクリプトファイルと、全く同じ記述法でOKです。
マクロ実行中は、デスクトップ全体にてキー入力及びマウス入力が行えなくなります。
(いわゆる「アプリケーションが入力キューを摘んだまま」の状態になる)
そのため、あまり時間がかかる処理をマクロとして登録/実行するのは、好ましくありません。
また、「PULL」「SysGetKey」「RxMessageBox」等の関数を使う等して、キー入力待ち状態を発生させないようにして下さい。
(その他では、「SysTextScreenSize」等の VIO 画面に依存した関数も使用不可)
スクリプトは、戻り値 0(または指定無し)で正常終了と見なされ、それ以外の数値を戻すと、「警告」の音を鳴らします。
また、スクリプトがエラーで中断した場合は、「エラー」の音を鳴らします。
(警告音を鳴らす以外の処理の相違はありません)
この機能を用いて、模擬的にキー入力やマウス入力などを行う事が可能です。
ただし、「模擬的な入力による動作」と、「実際にキーやマウスを操作した入力による動作」が必ず一致するとは限りません。
特に、REXX スクリプト実行中にフォーカスが変化する操作(メニューの表示や、フレームのトラッキング等)が発生すると、
高い確率で誤動作します。
「キー操作拡張:REXXマクロ」の機能によってスクリプトが呼び出された場合、
そのキー操作は「使われた」と見なされ、そのキー入力はアプリケーションには届かなくなります。
(届くようにする事も可能。ArxReplaceKey を参照して下さい)
それ以外の機能によってスクリプトが呼び出された場合は、特に処理は行わず、例えばマウスボタン押し下げ等の操作は、必ずアプリケーションに通知されます。
(破棄する事も可能。ArxReplaceMouseButton
及び ArxReplaceCommand を参照して下さい)