UpdateManifestForBrowserApplication 任务

生成 XAML 浏览器应用程序 (XBAP) 项目时,运行 UpdateManifestForBrowserApplication 任务,以将 <hostInBrowser /> 元素添加到应用程序清单中 (<projectname>.exe.manifest)。

任务参数

参数 描述
ApplicationManifest 必需的 ITaskItem[] 参数。

指定想要将 <hostInBrowser /> 元素添加到其中的应用程序清单文件的路径和名称。
HostInBrowser 所需的 Boolean 参数。

指定是否要修改应用程序清单,以包括 <hostInBrowser /> 元素。 如果为 true,则一个新 <hostInBrowser /> 元素将包括在 <entryPoint /> 元素中。 元素包含是累计的:如果 <hostInBrowser /> 元素已存在,则不会删除或覆盖它。 相反,将创建额外的 <hostInBrowser /> 元素。 如果为 false ,则不会修改应用程序清单。

备注

XBAP 通过 ClickOnce 部署运行,因此必须使用支持部署和应用程序清单进行发布。 MSBuild 使用 GenerateApplicationManifest 任务来生成应用程序清单。

然后,要将应用程序配置为从浏览器中进行管理,则必须将额外的 <hostInBrowser /> 元素添加到应用程序清单中,如以下示例所示:

<!--MyXBAPApplication.exe.manifest-->
<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly ... >
    <asmv1:assemblyIdentity ... />
    <application />
    <entryPoint>
      ...
      <hostInBrowser xmlns="urn:schemas-microsoft-com:asm.v3" />
    </entryPoint>
  ...
/>

当生成 XBAP 项目时,将运行 UpdateManifestForBrowserApplication 任务,以添加 <hostInBrowser /> 元素。

示例

以下示例演示如何确保 <hostInBrowser /> 元素包括在应用程序清单文件中。

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <UsingTask
    TaskName="Microsoft.Build.Tasks.Windows.UpdateManifestForBrowserApplication"
    AssemblyFile="C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\PresentationBuildTasks.dll" />
  <Target Name="UpdateManifestForBrowserApplicationTask">
    <UpdateManifestForBrowserApplication
      ApplicationManifest="MyXBAPApplication.exe.manifest"
      HostInBrowser="true" />
  </Target>
</Project>

请参阅