运行Multi Startup Application不会在Release上停止应用程序,但会在Debug上停止它们

时间:2012-07-12 05:31:35

标签: c# visual-studio-2010 ipc

我对Visual Studio 2010的调试和发布版本运行的差异有一个疑问。我有一个有两个项目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

我想知道在Debug和Release版本上运行Visual Studio上的多启动时有什么区别。我能想到的奇怪之处是B在Startup上注册了一个IPCServiceChannel。但是为什么问题是当我自己运行时B可以正常停止。

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

有任何建议如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

为多个项目设置多次启动需要为每个项目设置操作

行动如:无,开始和放大无需调试即可启动

另外一个重要的事情是你需要设置项目应该开始的顺序

例如,如果您希望服务器首先启动,但是它在订单中是最后一个,而不是按顺序从最后开始。您必须先将Server项目移动到先执行,然后按顺序移动

结论:在多启动项目中,您必须为每个项目设置操作和顺序