iSerise(AS400)からPCへメッセージを 送る方法
AS400のコマンドによりPC端末へメッセージ(メッセンジャサービスやIPmsgを利用し)を送信する方法
用途
システム内のプログラムがABENDした時や自動処理などの完了メッセージや外部からのデータ入手時
にメッセージを送信したい場合などに利用出来ます。PCOM立ち上げて無くてもメッセージが表示されま
すので便利ですよ。
PCサーバー側
1. PCサーバーへクライアントアクセスを導入する。(サーバーである事)
2. Incoming Remote Commandサービスを開始する。
NTの場合
2.1. コントロールパネル → サービス → Client Access Express Remote Command Serviceを
ダブルクリックしAutomatic(自動)にする。
W2000の場合
2.1. コントロールパネル → 管理ツール → サービス → Client Access Express Remote Co
mmand Serviceのプロパティで自動にする。
XPの場合
2.1. コントロールパネル → 管理ツール → サービス → iSeries Access for Windows リモート・
コマンドのプロパティで自動にする
AS400側
マイクロソフトのメッセンジャーを利用する場合
前提条件 マイクロソフト・メッセンジャーサービスが有り、開始されている事
コマンド
RUNRMTCMD CMD('"NET SEND 192.158.1.10 テストメッセージ
"') RMTLOCNAME( +
'192.158.110.110' *IP) RMTUSER(TEST) RMTPWD(TEST) CCSID(943)
コマンド説明
RUNRMTCMD CMD('"NET SEND 送信先PCのIPアドレス テストメッセージ "')
RMTLOCNAME('サーバーIPアドレス' *IP) RMTUSER(サーバーのユーザー)
RMTPWD(サーバーのパスワード) CCSID(943)
PC側に以下のメッセージ画面が表示されます。
IPmsgを利用する場合(作者のHP)
前提条件:相手側とサーバーにIPmsgが導入し動いてる事
コマンド
RUNRMTCMD CMD( ' "C:\IPMSG.EXE /MSG 192.168.1.10 テストメッセージ " ' ) RMTLOCNAME( +
'192.158.110.110' *IP) RMTUSER(TEST) RMTPWD(TEST) CCSID(943)
例はIPmsg..exeをC:\へコピーして使用しています。
コマンド説明
RUNRMTCMD CMD( ' "C:\IPMSG.EXE /MSG 送信先PCのIPアドレス テストメッセージ " ' )
RMTLOCNAME('サーバーのIPアドレス' *IP) RMTUSER(サーバーのユーザー)
RMTPWD(サーバーのパスワード) CCSID(943)
PC側に以下のメッセージ画面が表示されます。
障害
RUNRMTCMD実行時、応答がない場合
・ ファイアーオールで遮断されている場合がある。サービスプログラムを例外として下さい。
・ コントロールパネル → 管理ツール → サービス → iSeries Access for Windows リモート・
コマンドのプロパティのログオン内のデスクトップとの対話をサービースに許可をチェックする
必要なユーザー ID がないかまたは無効です。
・ PC側にユーザーを追加して下さい。
必要なパスワードがないかまたは無効です。
・ パスワードが間違っている。
・ OS400とクライアントアクセスのバージョン違い(CLでの変数渡しの場合)
CPD552A 文字の変換中にエラーが起こった。
・ CCSIDが正しくないか、パラメータに設定されていない
'C:\PGM.exe' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
・ PC上のプログラム指定が間違ってます。