【问题标题】:Create NSIS package as part of build创建 NSIS 包作为构建的一部分
【发布时间】:2009-07-13 12:26:23
【问题描述】:

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

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

示例:

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

【问题讨论】:

  • 你的构建环境是什么?你在使用nmakemakeant,什么?更多详细信息将有助于您的问题得到解答。

标签: nsis


【解决方案1】:

这是我用的

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      我使用了类似于 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 测试人员时,这非常方便。您只需要在构建服务器中进行两项配置。

      【讨论】:

        【解决方案4】:

        我正在提供最新信息:

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

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

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

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

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

        【讨论】:

          猜你喜欢
          • 2012-09-30
          • 2010-12-23
          • 2013-11-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多