電子書籍の厳選無料作品が豊富!

同一ソリューションになる複数プロジェクトで連携する方法を教えてください。
調べるためのヒントをいただければと思います。

プロジェクトが A,B,C と三つ作成予定です。

A,B,C 単体で利用できるプログラムとして作成します。

また B,C は A から呼び出しされる形で起動させる場合があります。
その際に A は B,C に必要な情報を渡します。
B,C で作業を完了すると A に結果を返します。

以上のことをやりたいと思っています。


今の知識でやろうとすると、A,B,C 単体で動かすのはそのままでOK。
B,CがAからの呼び出しかどうかを、起動時の引数などで判断。
呼び出し軌道の場合は、引き渡す情報を一時ファイルでやりとりする。

という形になりそうです。

基本的に A から B,C を呼び出した時点で制御はB,Cに移行してAでは作業できないようにしたいと思っています。


一時ファイルで作成するのもよいのですが、プロジェクト内で別なフォームを呼び出すような感じで処理できないか調べているところです。

どのような情報を調べていけばよいかよろしくお願いします。

A 回答 (2件)

ご質問の内容から考えると、おそらくmuuuuu様のやりたい事はプロジェクトの連携ではなく、プロセス制御ではないでしょうか。



.Net Frameworkクラスライブラリ
  System.Diagnostics
    Processクラス

を調査すれば方法が見つかると思います。

>基本的に A から B,C を呼び出した時点で制御はB,Cに移行してAでは作業できないようにしたいと思っています。

呼び出し側のプロセスAで、WaitForExitメソッドを使用することにより、この動作が実現出来ると思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

なるほど確かにプロセス制御かもしれません。
ProcessクラスとWaitForExitを調べてみると、やろうとしていることはすべて実現できそうです。

後学のためにプロジェクト間の連携についてヒントがありましたら、よろしくお願いします。

お礼日時:2010/01/27 09:21

>後学のためにプロジェクト間の連携についてヒントがありましたら、よろしくお願いします。



プロジェクト間の連携といえば、主にプロジェクトのビルドを行う際の依存関係を設定することを指すと思います。

例えばソリューションの中に以下のプロジェクトを含んでいるとします。
・メインとなるアプリケーションのプロジェクト
・アプリケーションが利用するDLLを作るためのプロジェクト

1番目のプロジェクトをビルドするには、2番目のプロジェクトがビルドされていなければなりません。

VisualStudioのソリューションに複数のプロジェクトが登録してある場合、ソリューションエクスプローラー上のプロジェクトを右クリックすると「プロジェクトの依存関係」という項目が現れると思います。これを実行すると依存関係を設定する為のダイアログが表示され、依存先のプロジェクトを指定することが可能です。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

なるほど。
プロジェクトに関して少し勘違いしていました。

ずっとプロジェクトは単体で完結するプログラムで、ソリューションはその集合体と思っていました。

巨大なプログラムとなると、プロジェクトで分けて開発して、依存関係をもつようにするのが自然ですね。

ありがとうございます。
だいぶ理解できてきました。

お礼日時:2010/01/28 00:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!