2つのVBアプリを連携させるには?


鈴木  2008-11-24 20:13:46  No: 145435

#環境はXPPro、VB2005、Oracle11gです。

作成したアプリ1でボタンを押すと、アプリ2でoo4oでDB接続を行い、
データ取得に要した時間をアプリ2でログ出力します。
また、接続に要した時間をアプリ1に渡し、テキストボックスにも表示します。

アプリ1でボタンを押した後の処理をTimerで繰り返し行いたいのですが、そのようなことは可能でしょうか?
また、アプリ2で接続を切断せずに繰り返せるでしょうか?

このような処理は今までに経験がなく戸惑っています。
どうぞよろしくお願いします。


鈴木  2008-11-25 03:37:45  No: 145436

色々探した結果、APIの名前付きパイプというものでできるように思えたのですが、どのようなものでしょうか?
2008ではSystem.IO.Pipeというクラスがあるようですが、2005では無理なのでしょうか?

重ねての質問、申し訳ありませんがよろしくお願いします。


オショウ  2008-11-25 16:19:05  No: 145437

実現の方法に沢山ありすぎて、何をどう説明してよいのやら・・・

因みに、アプリ1とアプリ2と言う別々の実行形式プログラムに
する必要があるようにも思えないのですが。

その辺どうなのでしょうか?
アプリ2としている機能を別クラスにしてDLLとして作成し、
アプリ1から呼び出せるようにするだけでも機能的に問題とは思
えないのですが。

それと・・・
Oracle11g と、.NETなら、ODP.NET 使うのが基本と思いますが、
何故まだoo4oなのでしょう。

以上。(突っ込みだけでした・・・)


鈴木  2008-11-25 17:40:56  No: 145438

お返事ありがとうございます。
ODPを使いたいところなのですが、仕様でoo4oに決まってしまいまして・・・
アプリ1とアプリ2を分けている理由ですが、正確にはアプリ2に該当するものが幾つかあります。
アプリ2からDBへ1:1で問い合わせを行い、それぞれの結果をアプリ1の1フォームに表示させる監視プログラムのようなものになっています。


オショウ  2008-11-25 21:34:02  No: 145439

Oracleはいいとして・・・
パイプでもソケットでも、リモーティングでもいろいろ手法は
あります。無茶な話、ファイルでも可能。

レスポンスや利便性、プログラムの難易度、コードの量・・・
どこを取るかでしょうか。

まずは何かやってみて、それから問題があれば方法を変える。
と言う流れになろうかと。

何はともあれ、まず一つを選択してやってみて下さい!

これ以上はどうにもアドバイスのしようがない。

以上。


我龍院  2008-11-26 01:57:41  No: 145440

一番簡単(と思われる)な方法はSendMessage(API)による
プロセス間通信でしょう。


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加