我有一个包含许多C#应用程序项目的Visual Studio解决方案。
Solution/ A/ B/ C/ Installer (WiX)/
其中一些可执行文件需要能够运行其他可执行文件。例如,A需要能够运行B和C.一旦安装了整个软件包,这很容易,因为可执行文件将全部安装到同一位置。但是,当我从Visual Studio内部运行程序时,即在测试和调试时,我不确定如何从B.exe
找到A.exe
。
如果从Visual Studio运行或完全安装程序后,如何获取正确的路径?我有一些想法,但我对执行感到有些沮丧,我希望它比现在看起来更容易。我很乐意手动编辑*.csproj
文件,如果这就是它。
我可以将路径放在App.config
文件中。但是,有一些问题:
我可以将必要的路径放在使用后期构建步骤创建的纯文本文件中,但我不知道足够的批处理脚本以便对此感到满意。
以某种方式将B.exe
复制到A的输出目录中,因此B.exe
始终位于相对于A.exe
的相同路径中。这会很烦人,因为已经有一些后期构建步骤复制了B.exe
的一堆依赖项,并且在A的构建过程中需要再次复制这些文件。
以某种方式调整构建过程,因此解决方案中的所有项目之间只共享一个输出目录。
我想保留解决方案,以便在从版本控制中检出存储库的新副本后,它可以正常工作,这意味着环境变量或命令行参数将不起作用。