LoginSignup
0
1

More than 5 years have passed since last update.

考察 > ソフト間通信 > 最長100文字のコマンドを送信, 応答を受信

Last updated at Posted at 2016-04-13
動作環境
Windows 7 pro 32bit

同じPC上で複数のソフト間の通信について検討中。

今のところ知っている情報より検討

File Mapping使用

  • FileMappingの使用
    1. Sender側でNamed File Mappingを作成
    2. Sender側からReceiver側へSendMessage()で書出し完了通知
    3. Receiver側がNamed File Mappingから内容を読取る
    4. Receiver側からSender側へSendMessage()で読取り完了通知
    5. Sender側でCloseHandle()する. File Mappingが削除される

上記の処理において、Sender側からSendMessage()した後に、ある指定のタイムアウト時間(1000msec)で応答がなかった時にCloseHandle()する。

応答については上記の反対を行う。

Window Message使用

  • Window Message使用
    1. Sender: Window Messageで1文字ずつ最大100個のコマンド相当数値を送り続ける
    2. Receiver: 100文字(あるいはある指定の終端数値)まで受取る

応答については上記の反対を行う。

スタートビット、ストップビットに相当する文字(に対応するlong型?)を定義しておかないと、Receiver側で通信内容の区切りが分からなくなる。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1