0

最近我开始用 VS2012 C# 编程,这是一个 Windows 窗体应用程序,它几乎完成了。

我想制作一个功能强大且外观漂亮的设置向导所以我搜索了互联网和 stackoverflow,很快就清楚 NSIS 是一个具有足够功能的程序来为我完成这项工作。

在 VS2012 中,我有 3 个选项:调试、发布和发布

  • 调试 - 在我的计算机上工作正常,我的程序工作,但如果我想在其他机器上部署,我需要参考一些 *.dll 文件、图标、帮助文件等,我需要在安装文件中分发这些文件(我思考)。

  • 发布 - 我认为它几乎相同,只是一个不同的文件夹。

  • 发布 - 为我制作以下文件:

    /publish/setup.exe
    /publish/PCWS-Report.application
    
    /publish/Application Files/PCWS-Report_1_0_0_0/FastReport.dll.deploy
    /publish/Application Files/PCWS-Report_1_0_0_0/FastReport.Bars.dll.deploy
    /publish/Application Files/PCWS-Report_1_0_0_0/ODBCMngr.dll.deploy
    /publish/Application Files/PCWS-Report_1_0_0_0/Image1.jpg.deploy
    /publish/Application Files/PCWS-Report_1_0_0_0/PCWS-Report.application.deploy
    /publish/Application Files/PCWS-Report_1_0_0_0/PCWS-Report.exe.manifest
    /publish/Application Files/PCWS-Report_1_0_0_0/PCWS-Report.exe.deploy
    /publish/Application Files/PCWS-Report_1_0_0_0/PCWS-Report.application
    /publish/Application Files/PCWS-Report_1_0_0_0/PCWS-Report.exe.config.deploy
    
    /publish/Application Files/PCWS-Report_1_0_0_0/Resources/
                                   Firebird_ODBC_2.0.1.152_x64.exe.deploy
    

最后我的问题:

  1. 我从哪个目录获取文件来构建我的安装文件?

  2. 如果是发布目录,我需要重命名文件吗?

  3. 我是否需要所有文件,例如 .manifest.deploy 文件或 .config.deploy 等?

4

1 回答 1

1

在以前的 Visual Studio 版本(例如 2010)中,您有两个内置选项来创建项目的安装程序

  • 第一个是创建安装或部署项目。对于 Windows 窗体应用程序,这通常意味着构建MSI安装程序。这在 VS2012 中不再是一个选项

  • 第二个称为Click Once部署。VS2012 仍然支持它。请注意,当您在 Visual Studio 的 Build 菜单中选择 Publish 选项时,您将生成 Click Once 部署文件(即.deploy)。

NSIS 是一个完全不同的选择,因为它不是 Microsoft 技术,而是由 Nullsoft 开发的(是的,他们的产品也是 Winamp)。这是一个可编写脚本的安装系统,恕我直言,它是一个非常好的系统。

如果您想创建 NSIS 安装程序,您甚至不需要 Visual Studio。(当然,在创建安装程序之前,您必须首先构建您的解决方案。)您.NSI使用您最喜欢的文本编辑器(可以是 Notepad++ 甚至 VS 本身)手动创建一个文件,并使用makensis.exe它作为 NSIS 安装的一部分来构建它。

所以对于您的第一个问题:您总是在生产中使用 Release 构建文件夹中的文件。您应该阅读更多关于 Debug 和 Release 构建之间的差异。(例如这里)简而言之:您在开发应用程序时使用 Debug 构建,当您想要将应用程序部署到生产环境时使用您的 Release 构建。

于 2013-10-11T20:10:04.977 回答