如何使用VS安装和部署项目并构建一个.msi文件来安装程序?

时间:2011-02-14 18:22:39

标签: c# deployment

我想使用安装和部署项目技术部署C#Windows应用程序项目 但我不知道应该用什么 在我打开文件>新>项目>设置和部署> .... 然后,我该怎么做呢

4 个答案:

答案 0 :(得分:1)

过去我使用Visual Studio安装项目或Innosetup来完成我的程序。我更喜欢在exe文件上构建.msi,因此Visual Studio安装项目已经有一段时间了。但是,它缺乏能力。在我看来,界面不直观。每次我构建安装程序时都会进行大量的试错安装/卸载以使其正确。其他人已经指出了WIX,我已经调查过了。它似乎非常灵活,因为它是开源的,我们应该能够长期依赖它。

Here是最近关于WIX的文章。我发现有趣的是文章声称(参见文章中的链接)Visual Studio安装项目在VS 2010 + NEXT_VERSION中正在结束。这对我来说有点令人不安。由于我不想在VS中开始依赖新的Install Shield“Lite”,我将努力学习WIX。我希望它能为我的应用程序提供更灵活的构建。

所有这一切,在创建VS安装项目时,我通常使用向导来放入初始管道。您将它指向.msi中所需的文件。通常对我来说,这意味着我的解决方案中的一个或多个程序的“输出”。程序中引用的任何托管程序集将自动被选为依赖项并包含在内。不幸的是,非托管程序集没有,我通常必须使用Setup Project UI中的“文件系统编辑器”模式手动添加它们。添加快捷方式也有点不对劲。在“文件系统编辑器”模式的开始菜单和桌面部分右键单击,然后选择创建快捷方式。这完全是记忆所以我希望我能做到这一点。在获得安装程序之前,您必须多次测试安装程序。我也喜欢在VM下测试。

最后,VS Setup项目会生成setup.exe和.msi文件。在解压缩实际的DLL之前,Setup.exe用于检测和安装依赖项(例如.Net)。

答案 1 :(得分:0)

当你这样做时File > New > Project > Setup and deployment > 然后右键单击Application folder> Add > File...并添加应用程序的.exe文件,还可以在桌面和程序菜单中添加应用程序的快捷方式

答案 2 :(得分:0)

我建议你去创建一个用于创建msi的工具。

我正在使用WIX

答案 3 :(得分:0)

您需要什么取决于......您需要什么。

对于大部分应用程序,安装程序要做的就是让用户选择安装位置,将文件复制到该位置的目录结构,并创建一些快捷方式。为此,Visual Studio安装程序 - >安装项目很好。它可以处理此基本功能,以及安装.Net Framework可再发行组件等先决条件,提供自定义安装选项和/或编写简单的注册表项。安装向导也会创建一个安装项目,但会引导您完成向导以设置基础知识。如果您之前从未创建过安装程序,那么这是一个不错的选择。

如果您希望通过更大,更自定义的安装来控制此应用程序,请选择CAB项目;它只需将必要的文件打包到一个可以从另一个安装项目轻松访问的存档中。

如果要发布类库,请使用合并模块。合并模块本身在安装程序中工作,提供主应用程序工作所需的文件。

如果您需要认真的自定义,或者您想要与现有的InstallShield逻辑接口,我会得到第三方安装程序。我之前使用的是InstallShield,它的功能非常全面,但同样的道理,它创建的安装程序本身就是应用程序,可能需要数天或数周的逻辑编程才能“调整”到令您满意的程度。