如何从一个Visual Studio项目

时间:2015-11-18 09:57:42

标签: c# winforms visual-studio-2013 config exe

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

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

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

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

2 个答案:

答案 0 :(得分:11)

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

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

  1. 右键单击"解决方案资源管理器"中的根节点并选择Add > New Project并选择您要添加的项目类型。

  2. 在解决方案资源管理器中右键单击项目项,然后选择Properties > Build > Output path。设置到所需的目录,在其中构建它。对其他项目重复此操作。

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

    • 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文件制作两个精简项目,这两个文件只配置和使用"中央公共/核心DLL。

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

答案 1 :(得分:0)

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

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