微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

高级安装程序:查询结果未存储在属性中

如何解决高级安装程序:查询结果未存储在属性中

我想在高级安装程序中运行查询,并将其结果用于安装的最后阶段。 场景是这样的: 在安装开始时,使用查询将这样的记录插入日志表中:

DECLARE @return_value int
DECLARE @UML_ID int
EXEC    @return_value = [Common].[UML_Insert_WebServiceInstaller]
        @UML_ToVersion = '$VERSION$',@UML_UpdateType = 1,@UML_ID = @UML_ID OUTPUT

SELECT @UML_ID AS UML_ID_PROP

然后在安装结束时,我应该更新以UML_ID_PROP返回的给定记录。

我已定义查询,将其结果存储在UML_ID_PROP中,如下所示:

enter image description here

然后我想在组合框中显示存储在UML_ID_PROP中的结果,但是没有显示出来,并且仅显示认值。

enter image description here

这是属性UML_ID_PROP的配置。

enter image description here

解决方法

您正在安装执行阶段设置属性。这是Windows Installer的一项限制,即属性值不能从安装执行阶段传递到向导对话框阶段

解决方法是通过向导对话框阶段中安排的自定义操作来设置属性。

如我所见,您正在尝试在属性中获取SQL查询的结果,并将该属性显示在 ExitDialog 上。请注意,您可以在向导对话框阶段轻松执行SQL查询,有关详细信息,请查看Set MSI properties from SQL queries视频。

请查看Windows Installer Custom Actions文章,以更好地了解如何在MSI中执行自定义操作/标准操作。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。