5

有没有办法将 NSIS 包编译为构建的一部分?我使用 MSBuild。

更新:作为 NSIS 下载的一部分,有一个名为 makensis 的命令工具。我只是从我的构建脚本中执行了它并将它交给了我的 .nsi 文件。

例子:

<Target Name="MakeDistributable">
    <Exec command="..\Tools\NSIS\makensis.exe MyDistScript.nsi" WorkingDirectory="..\Installation" /> 
</Target>
4

4 回答 4

4

这是我用的

<Target Name="MakeDistributable">
  <Exec command="..\Tools\NSIS\makensis.exe MyDistScript.nsi" WorkingDirectory="..\Installation" /> 
</Target>
于 2009-07-29T06:56:27.157 回答
2

Cruise Control .NET 构建自己并创建一个 NSIS 包作为构建过程的一部分。我建议看一下它的构建过程和源包。您将在来自CCNet live的源 zip 文件之一的 nant 构建文件中找到所需的一切。

于 2009-07-13T12:35:16.820 回答
0

我使用了类似于 Riri 的东西,但我想你可能会对我如何在没有任何配置的情况下制作发布/调试安装程序感兴趣:

首先,我将它添加到我的 NSI 脚本中:

!ifndef Configuration
    !define Configuration "Debug"
!endif

然后这是我的 msbuild 目标:

<Target Name="Installer" DependsOnTargets="Build">
    <Exec Command="&quot;C:\Program Files (x86)\NSIS\makensis.exe&quot; /X&quot;!define Configuration '$(Configuration)'&quot; ..\Installer\Installer.nsi" />
</Target>

然后传递配置(默认为调试)。然后我可以像这样使用它:

File /r /x *.xml ..\MyApp\bin\${Configuration}\*

例如,在将调试版本发送给 beta 测试人员时,这非常方便。您只需要在构建服务器中进行两个配置。

于 2013-09-11T11:04:07.313 回答
0

我带来了最新信息:

有第 3 方 Visual Studio 扩展,它将 NSIS(也是 Inno Setup)与 IDE 集成,并在其中添加了新的安装项目(.exe 安装程序)。

这些项目基于 MSBuild,因此您可以对它们执行任何操作(如任何常规 Visual Studio 项目)。

它们支持项目属性,因此您可以设置各种符号(如 Platform x86/x64...、Configuration Debug/Release...),支持批量构建、命令行构建和许多其他功能。

检查扩展网站: http: //www.visual-installer.com

(注意:我是作者或此扩展名)

于 2017-02-14T05:33:06.960 回答