2009-07-13 101 views
4

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

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

实施例:

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

什么是你的编译环境?你使用`nmake`,`make`,`ant`,什么? 更多详细信息将帮助您的问题得到解答。 – 2009-07-13 12:31:45

回答

3

这是我用来

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

巡航控制.NET构建本身,并创建一个NSIS包作为生成过程的一部分。我建议看看它的构建过程和源代码包。您可以在CCNet live的源zip文件之一的nant构建文件中找到所需的所有内容。

+0

完美!我会看看。 – Riri 2009-07-13 12:43:27

0

我用类似莉莉的东西,但我觉得你可能会感兴趣我是如何能够使发布/调试安装无需任何配置:

首先,我说这个我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测试者发送调试版本时,这非常方便。您只需要在您的构建服务器中使用两种配置。

0

我把最新的信息:

有哪些NSIS(也Inno Setup的)与IDE集成,并增加了新的安装项目文件(.exe安装程序)到它的第三方的Visual Studio扩展。

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

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

核对扩展网站:http://www.visual-installer.com

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

相关问题