最近我开始使用Windows Forms应用程序VS2012 C#进行编程,它几乎已经完成。
我想制作一个功能强大且外观漂亮的设置向导 所以我搜索了互联网和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
最后我的问题:
我从哪个目录获取文件以使用?
如果是发布目录,是否需要重命名文件?
我是否需要所有文件,例如.manifest.deploy文件或.config.deploy等。
答案 0 :(得分:1)
在Visual Studio的早期版本(例如2010)中,您有两个内置选项来创建项目的安装程序
首先是创建Setup or Deployment个项目。对于Windows Forms应用程序,这意味着构建MSI
安装程序。这不再是VS2012中的一个选项
第二个称为Click Once部署。它在VS2012中仍然受支持。请注意,当您在Visual Studio的“生成”菜单中选择“发布”选项时,您将生成“单击一次”部署文件(即.deploy
)。
NSIS是一个完全不同的选择,因为它不是微软的技术,而是由Nullsoft开发的(是的,他们的产品也是Winamp)。它是一个可编写脚本的安装系统,是一个非常好的恕我直言。
如果您想创建NSIS安装程序,则甚至不需要Visual Studio。 (当然,在创建安装程序之前,必须首先构建解决方案。)使用您喜欢的文本编辑器(可以是Notepad ++甚至VS本身)手动创建.NSI
文件,并使用{{1这是NSIS安装的一部分。
因此,对于您的第一个问题:您始终在生产中使用Release build文件夹中的文件。您应该阅读有关Debug和Release版本之间差异的更多信息。 (例如here)简而言之:在开发应用程序时使用Debug构建,并在要将应用程序部署到生产环境时使用Release构建。