如何从一个Visual Studio项目创建两个不同的可执行文件

问题描述 投票:6回答:2

我有一个主要的可执行文件,它根据配置文件中保存的设置运行。我希望能够通过不同的可执行文件更改配置文件中的设置。

有一种简单的方法可以在一个winforms项目中构建这两个不同的可执行文件吗?这意味着当我按下build时,会在同一个解决方案文件夹中创建两个不同的exes - 更改配置文件的文件夹,另一个使用它。

我知道如果我创建两个使用相同解决方案文件夹的独立项目,这是可行的,但我希望一步完成所有这些。

我假设这样做,我需要一个带有两个“主”功能的项目。这可能吗?

c# winforms visual-studio-2013 config exe
2个回答
11
投票

您可以根据需要在一个解决方案中构建任意数量的程序集。程序集可以生成.DLL或.EXE。

创建解决方案(或打开现有解决方案)。

  1. 右键单击“解决方案资源管理器”中的根节点,然后选择Add > New Project并选择要添加的项目类型。
  2. 在Solution Explorer中右键单击项目项,然后选择Properties > Build > Output path。设置到所需的目录,在其中构建它。对其他项目重复此操作。

这样,您在解决方案资源管理器中获得以下内容:

  • MySolution MyCommonCode(类库,导致MyCommonCode.dll) MyMainApp(Winforms App,结果MyMainApp.exe) MyConfigApp(Winforms App,结果MyConfigApp.exe)

MyCommonCode程序集包含两个exe正在使用的共享代码,如配置文件的标识符等。

MyMainApp是GUI应用程序(Winforms,WPF等),适用于主应用程序,具有MyComonCode项目的项目引用。

MyConfigApp是一个GUI应用程序,用于通过对MyCommonCode项目的项目引用来编辑配置值。

构建解决方案后,您将获得以下二进制文件:MyCommonCode.dllMyMainApp.exeMyConfigApp.exe

根据评论更新:

一个编译运行每个项目只能构建一个二进制文件(dll或exe)。您可以做的就是上面的答案:将大部分代码移动到公共/核心DLL中,并为两个exe只制作两个瘦项目,这两个exe只“配置和使用”中央公共/核心DLL。

您可以使用编译器定义基于同一项目构建不同的EXE。您甚至可以定义自己的定义。但是每次编译运行时,每个项目只能构建一个二进制文件(DLL,EXE) - 一个或另一个,但不能同时构建两个。


0
投票

配置文件的idear是您不需要构建多个可执行文件。 ;-)

您可以使用Configuration Manager创建新的Solution配置并更改该配置的输出目录。

© www.soinside.com 2019 - 2024. All rights reserved.