RUNRMTCMD は「43. RUNRMTCMDとSTRPCCMDのちがい」で
説明したように IBM iからWindows PCのコマンドを起動するIBM i側のコマンドである。
ただしSTRPCCMD は5250エミュレータ上にコマンドが埋め込まれていて5250エミュレータが
5250ストリーム内に埋め込まれたコマンドを読取って実行するという動作原理である。
海外輸入製品のエミュレータのほとんどはこれができないので
海外製品ではPCオーガナイザー(STRPCO)は、ほとんど動作しない。
海外製品は買ってから気づくことが多い。
海外輸入製品は技術レベルが高くはないのである。
売り先はこのような制限があることをほとんど説明していない。
さてSTRPCCMDでは5250ストリームに埋め込まれている単純な仕組みであるので
Windowsでは何の設定変更もしなくても正しい5250エミュレータであれば
動作できる。
しかしRUNRMTCMDはバッチで任意のWindows PCに目掛けてコマンドを発行するので
Windowsのユーザー、パスワードだけの認証情報を入れただけでは不足であり
動作させることはできない。
次の2つの設定が必要である。
・ CA400のサービス: Cwbrxd の開始
….RUNRMTCMDの要求を受取る側のサービス・プログラム(サーバー)は
導入時では手動になっているので明示的に手動でそのときだけ開始させるか
または自動に変更してつねに開始させてやる必要がある。
・Windowsのファイヤー・ウォールのPORT番号 512番を開ける
….RUNRMTCMDはPORT=512番を使ってサービス・プログラム: Cwbrxd と通信するので
このPORT番号を開けてやらねばならない。
それではその具体的な方法を紹介しよう。([注意]ここで説明するのはCA400(=ClientAccewssつまりiAccessである。
IBM ACS では RUNRMRCMDは動作しない )
・CA400のサービス: Cwbrxd の開始
Windowsの[スタート] – [コントロール・パネル] – [管理ツール] から「サービス」を
選択して起動する。
サービスの中から Cwbrxd を探して「手動」を「自動」に変更する
・Windowsのファイヤー・ウォールのPORT番号 512番を開ける
Windowsの[スタート] – [セキュリティが強化されたファイヤー・ウォール]を選択する。
「受信の規則」を選択する。
右上の「新しい規則」を選択して名前を RUNRMTCMD としてPORT512番を追加する。
RUNRMTCMDの実行
それではRUNRMTCMDを実行してみよう。
コマンドを入力して,実行キーを押してください。 ===> RUNRMTCMD CMD(SET) RMTLOCNAME('192.168.1.93' *IP) RMTUSER(QUATTRO) RMTPWD(xxxxxx) CCSID(943)
のようにして実行するとWindows のSETコマンドが実行される。
WRKOUTQ QPRINTを探してみると
次のような印刷結果: QSYSPRTが出力されていれば成功である。
※ AutoWebでも最近RUNRMTCMDをサポートするようになった。AutoWebのRUNRMTCMDサポート機能は無料である。
くわしくはこちらで。