CL

35. Windows にメッセージを送るには? (1)

System i から Windowsにメッセージを送信したい場合があり、これは結構重要な機能となる

場合がある。

クライアント/サーバー・モデルの適用業務を運用する場合にサーバー(System i)側で障害が

発生したり、重要なメッセージを送信したい場合である。

例えばC/Sモデルの適用業務において通信障害が発生したとすると、そのことをクライアントに

伝える手段がない。なにしろ伝えようにも通信が切断されているからである。

Webアプリケーションでも同じことである。

Webアプリケーションでもブラウザをクライアント・モジュールとする広義の意味でのC/Sモデルで

あると言えるからである。

TCP/IP やHTTPプロトコルが終了したしまったのでは、クライアントにエラーがサーバー側で発生

していることを伝達する手段すらない。

開発者やシステム担当者であればサーバー側の様子を直ちに調査するであろうが、エンド・

ユーザーでは「画面がフリーズした」として決してサーバー側を調査するようなことはない。

クライアントが動作しないというクレームだけが管理者に送られてくるだけである。

また、別件であるが ある人は Web化した適用業務では 5250環境と違って、SNDBRKMSG (中断メッセージ) だけは処理不可能であると言った。

これはなるほど、Web適用業務では必ず SUBMIT しないとサーバー(System i)からの応答を

入手することができないので 5250エミュレータ画面で何も操作していないのにいきなり

「BACKUPを取りますので業務を中止してください」などの *BREAKメッセージを受け取ることができないのである。

しかし、もし不定期に サーバー側からクライアント、つまり Windows へメッセージを送ることが

できたらこの問題は解決する。

そこでこのシリーズでは Windows へのメッセージ送信の方法をいくつか解説していきたいと思う。

■ NET SEND コマンドを使ってメッセージを送信する

このシリーズで解説するのは NetBios と呼ばれる Microsoft提供のネットワークである。Windowsエクスプローラの「マイネットワーク」を開けると構内LANに接続されている他の

PCが表示されて他のPCの共有フォルダーを参照することができるのは、既にご存知で

あると思う。

これは NetBEUI という名前の Microsoft が提供しているプロトコルによる通信によって

実現されている。

この NeiBios を使う NET という名前のDOSコマンドが Windows に提供されている。

( Windows のヘルプを参照のこと)

この NET コマンドでパラメータを使って「NET SEND」を実行すると他のPCにメッセージを送信することができる。

形式は NET SEND (IPアドレスまたはPC名) メッセージ(128バイト以内) である。

例えば

NET SEND 192.168.1.11 これはテストです。

を 下記のように DOSコマンド・プロンプトから打鍵して実行する。

受け取り側のWindows では次のように、いきなりメッセージ・ダイアログが表示される。

非常に簡単な操作で。できるので是非お試し頂きたい。

賢明な読者の場合は、ここでもう次の解説を推察されたかも知れない。

NET SEND コマンドを使えば、容易にメッセージを Windows に送ることができるのである。