Visual Studio将项目发布到一个简单的安装程序

时间:2017-12-22 05:48:00

标签: c# visual-studio visual-studio-2017 installer

我有一个相当大的项目,有多个课程,500多张图片,以及与该项目相关的20多个文本文件。

我通过右键单击project->properties并点击发布标签来发布我的项目。我已将文本文件和图片包含为resources

问题是每当我安装一个应用程序时,通常它是一个简单的安装程序,即你下载一个安装程序(一个文件,如installer.exe),运行这个文件,然后引导你完成设置,如在哪里安装它等等。然后安装应用程序就可以了。

好吧,在发布我的应用程序时,我指定了一个输出目录,我还留下了这些文件:

  • 申请文件
  • MyProjectName.application(清单?)
  • SETUP.EXE

如果我运行setup.exe,我就可以安装应用程序并运行它而不会出现任何问题。但是,它不仅不允许我选择安装位置,而且还必须将所有这3个文件发送给用户。我尝试将setup.exe发送给朋友,并说他们错过了所需的文件(我假设的是application files.application所针对的文件。)< / p>

我如何将这些全部集成到一个安装程序中,一个更符合您安装企业应用程序的方式(想想安装chrome,eclipse,photoshop等)?

我很高兴能够拥有一个安装程序,并且能够让用户下载该文件。

谢谢

1 个答案:

答案 0 :(得分:1)

  

更新 2018年9月 - 由于这&#34;回答&#34;最近被downvoted,让我尝试添加一些更多链接,看看是否有意图   答案可以更明确。不要过于戏剧化,但是:

     

<强> As deployment specialists we have to warn people when they commit to using a tool that is bound to fall apart for them down the line when more advanced deployment requirements invariably surface

     

安装程序项目多次pulled back and then re-introduced in Visual Studio。总是基于所看到的问题   使用这些项目类型(只是更大的项目):

     

1) 没有MSBuild支持(我未经过广泛测试,但未经其他人测试), 2) 仅在系统中运行的延迟模式自定义操作上下文(不能在GUI中插入), 3) 整体控制非常有限(始终是广告快捷方式,无法配置某些内容等等), 4) 不支持正确的服务安装 - 需要自定义操作, 5) 捆绑的极少数可用先决条件, 6) 基本GUI很少有灵活性, 7) 似乎无法定义MSI功能(如功能和组件), 8) {{3}的问题等等...

     

此项目的旧MSDN页面类型及其问题:32 / 64 bitness issues for custom actions

     

MSI专家Chris Painter和其他人:

           

在我看来,项目类型只适用于简单的.NET应用程序。任何复杂的口径和你都有麻烦。 SQL ScriptsIIS,正当COM / COM+Users & GroupsSharesFirewall RulesCustom GUI等...商业工具和WiX已经为这些东西提供了高级支持。已编译的MSI文件的内部也是不合标准的(使用自注册,服务的自定义操作等)。我经常会遇到这个工具停止工作的原因&#34;一些未知的原因&#34;同样。突然间它不会编译。 Why use Windows Installer XML (WiX) over VDPROJ?(已修复)。

     

<强> 替代

           

How to create windows installer包含一个名为的组件   The open source WiX toolkit创建此类 setup.exe 启动器/下载器   / bootstrappers - 用于按顺序运行多个安装和/   或安装先决条件(一个非常常见的任务 - Visual Studio项目   只支持一些先决条件)。

     

编写WiX XML标记代码是使用此刻录功能所必需的。   商业工具BurnInstallshield   提供GUI功能来构建此类 setup.exe 文件。

Visual Studio安装程序非常有限,我从不使用它。 Advanced Installer (链接到试图为WiX速成课程提供一些链接的答案)是一个完整的开源部署解决方案。掌握你需要一段时间,但它非常好而且灵活。商业解决方案(例如 Installshield 高级安装程序)将允许您更快速,更轻松地提供设置,但它们可能非常昂贵。

鉴于Visual Studio Installer项目(和bug)的局限性,我相信正确的解决方案是使用不同的工具: WiX。如果您需要任何先进的东西,否则你会挣扎。使用更先进的工具,至少可以做到你需要的东西,即使它有时可能更多涉及。

让我知道你想知道的关于这个过程的内容,我会尽力帮助你。我不确定您提供的是哪种软件,目标用户组是什么,您有什么预算等等... What installation product to use? InstallShield, WiX, Wise, Advanced Installer, etc非常需要Windows Installer,但是存在其他部署技术(请参阅上面的各种部署说明)使用的工具)。