在同一解决方案中获取另一个可执行文件

我正在使用c#,VS 2005。

我有两个项目的解决方案。

一些检查后,Project1需要启动project2。

如何从Project1中获取Project2的可执行文件路径?

我需要一个调试和实时模式的解决方案。

谢谢,

KS

第二个项目的EXE需要有一个可预测的位置,相对于第一个EXE。 获取包含第一个EXE的文件夹的绝对路径很简单:

string myPath = System.Reflection.Assembly.GetEntryAssembly().Location; string myDir = System.IO.Path.GetDirectoryName(myPath); 

然后附加第二个EXE的相对路径。 建议将它保存在与第1个目录相同的目录中:

  string path = System.IO.Path.Combine(myDir, "project2.exe"); System.Diagnostics.Process.Start(path); 

让它在IDE以及目标计算机上运行良好的最简单方法是让IDE复制project2.exe。 右键单击project1,Add Reference,Projects选项卡,选择Project2。 引用的“复制本地”属性为True,以便project2.exe与project1.exe位于同一目录中

如果将Project2输出目录设置为DebugRelease配置的已知位置,则可以在Project1中使用该已知位置。