使用InstallScript C#.Net向导连接到WinForms解决方案,我使用依赖扫描程序来识别项目输出。
安装包正在将未合并的app.config文件复制到目标目录,而不是解压缩合并的MyApp.exe.config文件。这导致可执行文件无法正确获取配置文件设置,这不仅是因为文件未正确命名,而且还没有在目标环境设置中合并(即发布,调试等)。
如何让安装程序将合并的MyApp.exe.config文件复制到安装目录?
答案 0 :(得分:2)
试试这个,我相信这应该有用。
选择配置文件,然后在File.Properties下的Copy to Output Directory中,选择Copy always或Copy if newer。您可以使用此方法选择任何您喜欢的文件。基本上,此文件将放置在构建二进制文件的目录中。我认为这仍然是比从InstallShield配置/修复更好的方法。如果你不同意,我想听听你的意见。
另一方面,使用配置文件并在运行时通过代码确定。这可能是InstallShield不知道文件依赖性的原因。它超出了该工具的范围。
玩得开心,让我知道会发生什么。
Tommy Kwee
答案 1 :(得分:1)
我正在使用SlowCheetah来执行我的app.config转换,这就是我们正在做的让installshield工作的方法。对于postbuild步骤,将installshield所需的所有文件复制到单独的Install文件夹(即复制“$(ProjectDir)$(OutDir)。”“$(ProjectDir)bin \ Install”)。将installshield指向该文件夹以构建其输出
答案 2 :(得分:0)
我也使用SlowCheetah进行配置转换,但这个问题的真正答案是InstallShield项目会关注所选的解决方案配置。如果在构建InstallShield项目之前选择Release配置,则将在安装包中使用Release输出。