0

Visual Studio 2010 のデバッグ ビルドとリリース ビルドの違いについて質問があります。2 つのプロジェクト A と B を持つソリューションがあります。A は B に依存し、プロセス間通信 IPC を介して B のメソッドを呼び出します。

シナリオは次のとおりです。

CASE A:
Run B only 
- Stops the window when you click the STOP button on both on Debug and Release

CASE B:
Multi Startup Run Both A and B (Both action are set to "Start"):
- Irregardless of the order of run, 
  On Release run, A is STOP but B is not stopped 
  On Debug run, B and A are both stopped

デバッグ バージョンとリリース バージョンの Visual Studio でマルチ スタートアップを実行するときの違いは何だろうと思っています。私が考えることができる奇妙なことは、B が起動時に IPCServiceChannel を登録することです。しかし、問題は、B を単独で実行したときに適切に停止できることです。

IpcServerChannel serverChannel = new IpcServerChannel("ProcessName");
ChannelServices.RegisterChannel(serverChannel, true);

これを修正する方法はありますか?

4

1 に答える 1

0

複数のプロジェクトでマルチスタートアップを設定するには、プロジェクトごとにアクションを設定する必要があります

次のようなアクション: なし、開始 & デバッグなしで開始

また、もう 1 つ重要なことは、プロジェクトの開始順序を設定する必要があることです。

たとえば、サーバーを最初に起動したいが、順番が最後である場合は、最後に起動します。サーバー プロジェクトを最初に実行するように移動し、次に残りを順番に移動する必要があります。

結論 : 複数のスタートアップ プロジェクトでは、すべてのプロジェクトのアクションと順序を設定する必要があります。

于 2012-07-12T06:13:01.223 に答える