Создать пакет NSIS как часть сборки - PullRequest
5 голосов
/ 13 июля 2009

Есть ли способ скомпилировать пакет NSIS как часть сборки? Я использую MSBuild.

Обновление: В составе загрузки NSIS есть командный инструмент makensis Я только что выполнил это из своего скрипта сборки и передал ему мой файл .nsi.

Пример:

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

Ответы [ 4 ]

4 голосов
/ 29 июля 2009

Это то, что я использовал

<Target Name="MakeDistributable">
  <Exec command="..\Tools\NSIS\makensis.exe MyDistScript.nsi" WorkingDirectory="..\Installation" /> 
</Target>
3 голосов
/ 13 июля 2009

Круиз-контроль .NET строит себя и создает пакет NSIS как часть процесса сборки. Я рекомендую взглянуть на процесс сборки и исходный код. Вы найдете все необходимое в файле сборки nant в одном из исходных zip-файлов из CCNet live .

0 голосов
/ 14 февраля 2017

Я обновляю информацию:

Существует стороннее расширение Visual Studio, которое интегрирует NSIS (также Inno Setup) с IDE и добавляет в него новые проекты установки (установщики .exe).

Эти проекты основаны на MSBuild, поэтому вы можете выполнять над ними любые действия (как и любой обычный проект Visual Studio).

Они поддерживают свойства проекта, поэтому вы можете устанавливать различные символы (например, Platform x86 / x64 ..., Debug / Release Configuration), поддерживать пакетную сборку, сборку из командной строки и многие другие функции.

Проверить расширение сайта: http://www.visual -installer.com

(Примечание: я автор или это расширение)

0 голосов
/ 11 сентября 2013

Я использовал что-то похожее на Riri, но я думаю, что вас может заинтересовать то, как я смог сделать установщики Release / Debug без какой-либо конфигурации:

Во-первых, я добавил это в свой скрипт 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>

Это затем передается в конфигурации (по умолчанию Debug). Затем я могу использовать его так:

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

Это очень удобно, например, при отправке отладочных сборок бета-тестерам. Вам просто нужны две конфигурации на вашем сервере сборки.

...