【问题标题】:Include another MSI file in my setup project在我的安装项目中包含另一个 MSI 文件
【发布时间】:2010-09-21 23:37:27
【问题描述】:

我正在尝试为 ASP.NET 网站制作安装程序。我需要确保目标机器安装了 sqlxml。

我必须验证目标机器是否安装了软件,如果没有,请在主安装之前或之后启动一个 .msi 文件。

我是一个安装项目的新手,所以这可能很明显,但是在浏览网页几个小时后,我还没有找到令人满意的解决方案。我一直在阅读有关 WiX 等的信息,但我正在寻找(如果可能的话)一个简单的解决方案。


谢谢你们!

我了解安装程序无法运行另一个安装程序。我正在考虑类似于先决条件(在项目属性中)的功能。在那里我可以检查一个组件,如果不是,它将自动安装。我不需要做任何其他事情。但是,对我来说最重要的是,如果不需要,安装将不会运行。

我也尝试了 .msm 解决方案,但找不到任何解决方案。也许我可以自己做一个?不过我还没试过。

【问题讨论】:

    标签: asp.net deployment installation


    【解决方案1】:

    很遗憾,您不能从另一个安装程序运行一个安装程序,因为一次只能运行一个安装程序。您需要将它们链接在一起并一个接一个地运行。谷歌“msi 链接”。这通常是 Visual Studio 等产品使用外部 setup.exe 的原因,它会一个接一个地运行安装程序。

    【讨论】:

      【解决方案2】:

      布伦特的回答是正确的。我只想补充一点,有时,您可以为您所依赖的位找到一个“合并模块”。那是一个 .msm 文件。您当然可以在 .msi 文件中包含 1 个或多个。我不知道合并模块是否可用于 SQLXML。对不起。

      【讨论】:

        【解决方案3】:

        看起来您需要“链接”安装http://objectmix.com/xml-soap/84668-installing-sqlxml-net-app.html

        你可以在这里http://www.microsoft.com/downloads/details.aspx?FamilyID=51D4A154-8E23-47D2-A033-764259CFB53B&displaylang=en获取redist

        您可以将此添加为安装的先决条件吗? 您使用什么来构建创建安装?

        编辑:
        我查看了如何检查 SQLXML 是否已安装并遇到了这个问题:
        http://www.tech-archive.net/Archive/SQL-Server/microsoft.public.sqlserver.xml/2005-04/msg00110.html

        我刚才使用的系统有以下键 HKEY_CLASSES_ROOT \ SQLXMLX(注意最后的 X),因此您可能需要对实际键进行更多调查。

        我不熟悉 Visual Studio 安装创作,但如果您可以在 AppSearch 和 RegLocator 表中添加一个条目,您应该能够在安装开始时检查注册表项的存在。看这里
        http://msdn.microsoft.com/en-us/library/aa371564(VS.85).aspx

        Reglocator 表让您可以选择使用注册表中的值(如果找到)来设置属性。然后,您可以在自定义操作的条件中使用它。

        很多东西要放在一起,但我希望它能让你朝着正确的方向前进。

        【讨论】:

        • 谢谢杰米。我将尝试链接安装,但是如果安装程序已经安装,我需要阻止它启动。这就是为什么我想将其作为先决条件(或具有类似功能的东西)来实现。我使用的是 Visual Studio 2008。项目类型是 Web 设置项目(对不起,我应该在前面提到过)。没有在先决条件菜单中包含新 .msi 包的选项。我已经看到可以编写新的 xml 文件并将其存储在 Program_Files\... 文件夹中,以在先决条件菜单中显示它们。然而,这么简单的事情似乎太麻烦了……
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多