使用mage工具在clickonce应用程序上定义先决条件

时间:2011-04-01 16:41:18

标签: build-process clickonce mage

通过visual studio发布Clickonce应用程序时,有一个“先决条件...”按钮,您可以在其中选择应用程序先决条件。

据我所知,发布操作会创建一个Setup.exe,用于验证是否已安装先决条件,如果不安装则先安装它们,然后运行“application_name”.application。

mage.cmd是否支持先决条件功能以及如何使用?或者,当在visual studio之外进行构建时,我们是否必须手动创建类似setup.exe的东西?

2 个答案:

答案 0 :(得分:2)

据我所知,Mage对Visual Studio的前提生成没有任何支持。这是有道理的,VS创建的bootstrapped setup.exe与ClickOnce没有任何关系,除了在应用完成后启动应用程序。

使用VS生成Setup.exe并使用Mage创建部署应该没问题。 Setup.exe应该很少改变,所以不应该太麻烦。

答案 1 :(得分:0)

您可以使用此MSBuild脚本生成setup.exe

    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
        <Visible>False</Visible>
        <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
        <Install>false</Install>
      </BootstrapperPackage>
      <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
        <Visible>False</Visible>
        <ProductName>.NET Framework 3.5 SP1</ProductName>
        <Install>true</Install>
      </BootstrapperPackage>
      <BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
        <Visible>False</Visible>
        <ProductName>Windows Installer 3.1</ProductName>
        <Install>true</Install>
      </BootstrapperPackage>

<GenerateBootstrapper ApplicationFile="$(Application).application" ApplicationName="$(ApplicationTitle)" ApplicationUrl="$(ProviderUrl)" 
                          OutputPath="$(DeployFolder)" BootstrapperItems="@(BootStrapperFile)" ComponentsLocation="HomeSite" CopyComponents="true"
                          Path="C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\"
                          />