在设置输出中包含app.config

时间:2010-06-23 14:00:54

标签: .net installation app-config

我有几个项目的解决方案:

MyLibrary (a VB.NET dll)
  .dll
  app.config
MyService (C# Windows Service with ProjectInstaller)
  .exe
  app.config
MyGui (C# WinForms app)
  .exe

我添加了一个安装项目并添加了所有三个项目的主要输出。我已将所有三个项目输出添加到自定义操作部分。事情是无论我做什么我都无法将MyLibrary.dll.config安装到应用程序文件夹中。 .config文件位于project \ bin \ debug文件夹中,但不在应用程序文件夹中。我做错了什么?

6 个答案:

答案 0 :(得分:3)

我能找到的解决方案是手动将文件添加到安装项目中。

答案 1 :(得分:2)

使用添加 - >项目输出并选择内容文件

答案 2 :(得分:1)

确保项目主输出上的ExcludeFilter属性不包含* .config,我认为默认启用此ID

答案 3 :(得分:1)

请注意。即使你为你的dll添加了app.config,你的exe也会默认忽略它。换句话说,如果您正在运行使用您的dll的exe,则不会加载dll的配置文件。您可能想要做的是将相关部分添加到您的exe的app.config中。您只需将dll .config文件的configSection标记下的部分添加到exe的app.config的configSections中,然后将userSetting和applicationSettings添加到exe的app.config中。

或者您可以在exe中手动加载dll的配置。

答案 4 :(得分:0)

当您在“应用程序文件夹”中包含主要输出时,将添加配置和其他必需文件。

安装完设置后,在安装文件夹中,它可能是exename.exe,该类型是'配置文件'。

但是,您仍然无法找到配置文件,请通过“应用程序”文件夹中的“添加文件”手动将其包含在内。

请参考以下链接。

http://balanagaraj.wordpress.com/2007/05/29/create-exe-or-setup-file-in-net-windows-application/

答案 5 :(得分:0)

这是所选答案的方式:

在要包含的app.config中,在文件的“属性”下,将“构建操作”设置为“内容”,将“复制到输出目录”设置为“总是复制”。在安装程序的“指定应用程序数据”->“包含的文件”下的“ Project.Contents文件”下。这将在输出中获取app.config。

但是: 我无法从安装程序输出中的app.config文件创建MyApplication.exe.config。在我的项目中,我必须将app.config重命名为MyApplication.exe.config,然后它才能工作。