如何导出 BizTalk 应用程序

本主题说明如何使用 BizTalk Server 管理控制台或命令行导出应用程序。 导出 BizTalk 应用程序会生成一个 Windows Installer (.msi) 文件,该文件包含已选择要导出的应用程序及其任何项目。 默认选项将选择应用程序的所有项目,但您可以选择其中的一个子集。 然后,将 .msi 文件导入到其他 BizTalk 组中,以便将这些项目添加到新组中的现有应用程序、更新现有应用程序中的项目或在包含这些要导入的项目的组中创建新的应用程序。 有关详细信息,请参阅 如何导入 BizTalk 应用程序。 还可以使用 .msi 文件在将运行该应用程序的计算机上安装应用程序,如 如何安装 BizTalk 应用程序中所述。 如果应用程序包括基于文件的项目,还必须安装这些项目才能让其开始工作。

导出应用程序时,请切记以下几点:

  • 导入的绑定将自动覆盖现有的绑定。 如果不希望要导出的应用程序中的绑定覆盖要向其中导入 .msi 文件的应用程序中的绑定,请不要选择绑定文件作为要导出的资源。 在向现有应用程序中导入一个包含绑定文件的 .msi 文件时,即使未选择覆盖现有项目的选项,现有绑定也会被正在导入的绑定所覆盖。

  • 导出应用程序时,用户有可能正在更改某个项目。 如果在导出操作正在进行时,某个用户正在修改基于数据库的项目(如虚拟目录、证书或策略),则这些更改不会反映在导出的 .msi 文件中。 因此,建议在用户不太可能更改这些项目的几个小时内计划导出操作。

  • 在 Windows Vista 上安装 .msi 时,可能会显示错误。 安装使用 BizTalk Server 导出的 .msi 包时,可能会收到以下错误:“安装程序在安装此包时遇到意外错误。 这可能表示此包有问题。 错误代码为 2869。”若要更正此错误,请先使用 BizTalk Server 导入 .msi 包,然后重新导出并安装该包。

  • 该应用程序可能依赖于另一个应用程序。 这可能会影响应用程序的部署方式。 有关详细信息,请参阅 依赖项和应用程序部署

  • 您可以在导出前在应用程序中修改目标资源目录。 如果要更改目标位置,请展开应用程序的“资源”节点,右键单击要更改的资源,然后选择“ 修改”。 在“修改资源”对话框中,为 “目标位置”输入新位置。

  • 如果应用程序包含已从规则引擎数据库中删除的策略,导出将失败。 使用规则引擎部署向导从规则引擎数据库中删除策略时,该策略将在管理控制台中显示为“未发布”状态,并且无法导出应用程序。 有关规则引擎部署向导的详细信息,请参阅 如何部署和取消部署策略和词汇

重要

.msi 文件可能包含敏感数据。 请务必采取措施确保文件安全。 有关详细信息,请参阅 安全和 Windows Installer

在应用程序导出期间,将从应用程序绑定中删除密码。 从 .msi 文件安装应用程序后,需要重新配置密码,以便使应用程序可以正常运行。 不过,密码并没有被从添加到应用程序中的任何绑定文件中删除。

如果应用程序包含使用 Web 服务的网站或业务流程,请注意,虚拟目录上的安全设置是在应用程序导出过程中生成 .msi 文件时生效的那些设置。 如果要将应用程序部署到生产环境,则应在导出应用程序之前验证设置是否满足安全要求。 如果主计算机上已存在虚拟目录,则不会覆盖其安全设置,但会将应用程序中的文件添加到其中。 导入应用程序后,应验证安全设置。

导出应用程序时,将从文件和文件夹中删除所有 (DACL) 的任意访问控制列表。 安装应用程序后,必须重新配置文件和文件夹上的所有安全设置,包括虚拟目录。

注意

如果导出操作失败,BizTalk Server将删除所有临时文件以及 .msi 文件(如果已创建)。

必备条件

若要执行本主题中的过程,必须使用属于 BizTalk Server 管理员组成员的帐户登录。 有关权限的更多详细信息,请参阅 部署和管理 BizTalk 应用程序所需的权限。 此外,必须安装业务规则引擎。 有关详细信息,请参阅安装BizTalk Server

使用BizTalk Server管理导出应用

  1. 依次单击“开始”、“所有程序”、“Microsoft BizTalk Server 20xx”,然后单击“BizTalk Server管理”。

  2. 在控制台树中,依次展开“BizTalk Server管理”、BizTalk 组和“应用程序”。

  3. 右键单击要导出的应用程序,指向 “导出”,然后单击“ MSI 文件”。

  4. 在“欢迎使用导出 MSI 文件向导”页上,单击“ 下一步”。

  5. 在“选择资源”页上,选择要导出到 .msi 文件的项目,然后单击“ 下一步”。

  6. 如果出现提示,请在“指定 IIS 主机”页上,键入托管要包含的虚拟目录的计算机的服务器名称,然后单击“ 下一步”。 仅当先前没有将虚拟目录添加到 BizTalk 管理数据库时(比如将虚拟目录添加到应用程序或将其导入应用程序时),系统才会提示你指定服务器。

  7. 在“依赖项”页上,查看应用程序的依赖项,然后单击“ 下一步”。

  8. 在“目标”页上的“ 目标应用程序名称”中,键入应用程序名称。

  9. 要生成的 MSI 文件中,键入 .msi 文件的完整路径,然后单击“ 导出”。 示例:C:\MSI\Errorhandling.msi

    注意

    建议你将 .msi 文件存储在安全的文件夹中。

  10. 在“摘要”页上,记下此操作的日志文件的位置,然后单击“ 完成”。

使用命令行导出应用

  1. 按如下所示打开命令提示符:单击“ 开始”,单击“ 运行”,键入 cmd,然后单击“ 确定”。

  2. 键入以下命令,替换相应的值,如下表所述:

    BTSTask ExportApp [/ApplicationName:value] /Package:value [ResourceSpec:value [/Server:value] [/Database:value]

    注意

    在支持用户帐户控制 (UAC) 的系统上,可能需要具有管理权限才能运行该工具。

    例如:

    BTSTask ExportApp /ApplicationName:MyApplication /Package:C:/MSI/MyApplication.msi /ResourceSpec:“C:\My Files\ResourceSpec.xml” /Server:MySQLServer /Database:BizTalkMgmtDb

    指定的项目将导出到指定位置的 .msi 文件中。

    参数
    /ApplicationName 要导出的 BizTalk 应用程序的名称。 如果未指定应用程序名称,则将使用默认 BizTalk 应用程序。 如果名称包含空格,则必须用双引号 (“) 括起来。
    /包 要创建的 .msi 文件的路径,包括其文件名。
    /ResourceSpec 资源规范 XML 文件的路径,包括文件名。 可以通过编辑资源规范 XML 文件来指定要导出的项目,该文件是在使用 ResourceSpec 参数运行 ListApp 命令时创建的,如 ListApp 命令中所述。 必须手动编辑此文件,以便为要导出的虚拟目录添加 Internet Information Services (IIS) 主机服务器名称(如果 Web 服务器位于远程计算机上)。
    /服务器 BizTalk 管理数据库的宿主 SQL Server 实例的名称,格式为“服务器名称\实例名称,端口”。

    只在实例名称与服务器名称不相同时才需要指定实例名称。 只在 SQL Server 不使用默认端口号 (1433) 时才需要指定端口。

    示例:

    Server=MyServer

    Server=MyServer\MySQLServer,1533

    如果未提供,则使用本地计算机上运行的 SQL Server 实例的名称。
    /数据库 BizTalk 管理数据库的名称。 如果未指定,则使用在本地 SQL Server 实例中运行的 BizTalk 管理数据库。

另请参阅

导出 BizTalk 应用程序、绑定和策略
ExportApp 命令