質問: visual c++でダイアログと処理の切り離し 初心者ですので簡単なものですが質問させてください。 visual c++2005のmfcのダイアログベースで作られたタイマーで周期処理されるプロジェクトがあります。 ダイアログと処理を別々のプロジェクトに切り離してudpで通信したいと考えています。 まずは簡単なモノで試したいのですが、どうすればよいのかわからないのでご教授いただけたらと思います。 例えば、処理としてはテキストボックスに数字を入力しボタンを押したら計算結果が表示される簡単なものです。 まずは、これが動作するモノを作りました。 そして同じものをコピペしてソケットを利用してプロジェクト間で通信を行えばよいと考えています。 内部処理としては下記のようになると思うのですが、、、 1.入力した変数をまとめてパケットに変換(ダイアログ側) 2.パケットを送信(ダイアログ側) 3.パケットを受信(処理側) 4.受信したパケットを解釈(処理側) 5.解釈したデータを計算処理(処理側) 6.計算処理結果をパケットに変換(処理側) 7.パケットを送信(処理側) 8.パケットを受信(ダイアログ側) 9.受信したパケットを解釈(ダイアログ側) 10.解釈したデータをダイアログに表示(ダイアログ側) ※通信ではafxsock.hを利用すればよいとのことでした。
回答: トリガとしてはダイアログ側が処理側にコネクトすることになるので、サーバー・クライアント型だと思います。まぁ、そんな区別はどうでもよいのですが、両方がipアドレスを把握する必要があるので面倒なのです。片一方で済ませたいですよね?って事です。接続されたほうは相手のipアドレスを知ることができるので返答できる仕組みにした方が良くないでしょうかぐらいの話です。 ロスト覚悟みたいですが、入力データは送れたけど計算結果が返っこないとかありますが良いのでしょうか? あるいは送ったつもりだったが実は届いていないとか。それを知る術がないのがudpの特徴なのです。 普通は音声データとか部分的に欠けても補正できるデータとかに使います。