运行 来自同一解决方案的第二个项目

Run a second project from within the same solution

我的任务是构建一个自定义更新程序,但正在努力解决如何 运行 这个问题。 我当然可以只创建一个单独的应用程序来处理这个问题,但最好将它们都放在同一个解决方案中。 在我的解决方案中,我的项目 "Main" 是一个表单应用程序,项目 "AutoUpdater" 是一个控制台应用程序。

我的想法是让 "Main" 运行 "AutoUpdater" 控制台应用程序处于单独的进程中,或者可能让程序将 autoupdater.exe 复制到临时文件夹中,然后运行 从那里开始(以防止文件锁定)

但是我如何告诉 Main 到 运行 AutoUpdater?

您可以通过提供路径使用 Process.Start 到 运行 AutoUpdater exe。

在你的 main 中声明一个 using。

using AutoUpdater;

然后您就可以轻松访问控制台。

使用 AutoUpdater 项目的 Post 构建事件将输出复制到主应用程序可以访问的位置。

在此处阅读更多内容:https://docs.microsoft.com/en-us/visualstudio/ide/how-to-specify-build-events-csharp?view=vs-2019

and/or 您可以将 AutoUpdater 的目录添加到 Path 环境变量,并在 Process.Start 方法中仅使用可执行文件名称。