提供检测、下载和安装应用程序及其先决条件的自动化方法。 它充当一个安装程序,用于集成构成应用程序的所有组件的单独安装程序。
任务参数
下面介绍任务的参数 GenerateBootstrapper 。
ApplicationFile可选
String参数。指定引导程序在安装所有先决条件后开始安装应用程序的文件。 如果未
BootstrapperItems指定或未指定参数,ApplicationFile则生成错误将产生。ApplicationName可选
String参数。指定引导程序将安装的应用程序的名称。 此名称将显示在引导程序在安装期间使用的 UI 中。
ApplicationRequiresElevation可选
Boolean参数。如果
true组件在目标计算机上安装该组件时具有提升的权限,则运行该组件。ApplicationUrl可选
String参数。指定托管应用程序的安装程序的 Web 位置。
BootstrapperComponentFiles可选
String[]输出参数。指定引导程序包文件的生成位置。
BootstrapperItems可选 ITaskItem
[]参数。指定要构建到引导程序中的产品。 传递给此参数的项应具有以下语法:
<BootstrapperItem Include="ProductCode"> <ProductName> ProductName </ProductName> </BootstrapperItem>该
Include属性表示应安装的必备组件的名称。 项ProductName元数据是可选的,如果找不到包,生成引擎将用作用户友好名称。 除非未ApplicationFile指定,否则这些项不是必需的 MSBuild 输入参数。 对于必须为应用程序安装的每个必备组件,应包含一项。如果未
BootstrapperItems指定或未指定参数,ApplicationFile则生成错误将产生。BootstrapperKeyFile可选
String输出参数。指定 setup.exe 的生成位置
ComponentsLocation可选
String参数。指定引导程序查找要安装的安装先决条件的位置。 此参数可以具有以下值:
HomeSite:指示组件供应商托管先决条件。Relative:指示先决条件位于应用程序的同一位置。Absolute:指示所有组件都位于集中式 URL 中。 此值应与ComponentsUrl输入参数结合使用。如果未
ComponentsLocation指定,HomeSite则默认使用。
ComponentsUrl可选
String参数。指定包含安装先决条件的 URL。
CopyComponents可选
Boolean参数。如果
true,引导程序会将所有输出文件复制到参数中指定的OutputPath路径。 参数的值BootstrapperComponentFiles应全部基于此路径。 如果未false复制文件,则BootstrapperComponentFiles值基于参数的值Path。 此参数的默认值为true.Culture可选
String参数。指定要用于引导程序 UI 和安装先决条件的区域性。 如果指定的区域性不可用,则任务将使用参数的值
FallbackCulture。FallbackCulture可选
String参数。指定要用于引导程序 UI 和安装先决条件的辅助区域性。
OutputPath可选
String参数。指定要复制 setup.exe 和所有包文件的位置。
Path可选
String参数。指定所有可用必备包的位置。
SupportUrl可选
String参数。指定要在引导程序安装失败时提供的 URL。
Validate可选
Boolean参数。如果
true,引导程序对指定的输入引导程序项执行 XSD 验证。 此参数的默认值为false.
注解
除了上面列出的参数之外,此任务还从 TaskExtension 类继承参数,该类本身继承自 Task 类。 有关这些附加参数及其说明的列表,请参阅 TaskExtension 基类。
Example
以下示例使用 GenerateBootstrapper 任务安装必须安装 .NET Framework 4.8 的应用程序作为先决条件。
<ItemGroup>
<BootstrapperFile Include="Microsoft.Net.Framework.4.8">
<ProductName>.NET Framework 4.8</ProductName>
</BootstrapperFile>
</ItemGroup>
<Target Name="CustomBootstrapper">
<GenerateBootstrapper
ApplicationFile="MyApp.exe"
BootstrapperItems="@(BootstrapperFile)"
OutputPath="$(OutputPath)"
ComponentsLocation="Relative" />
</Target>