VS 2010 安装程序可以将 MCR 作为先决条件吗?

Posted

技术标签:

【中文标题】VS 2010 安装程序可以将 MCR 作为先决条件吗?【英文标题】:Can VS 2010 Setup Include MCR as prerequisite? 【发布时间】:2011-08-30 00:52:39 【问题描述】:

我有一个项目,我正在尝试构建一个安装程序以使用 Visual Studio 安装项目。我想知道是否有办法将 MatLab 编译器运行时作为先决条件包含在内。现在我必须包含 MCRSetup.exe 并让用户先运行它,然后再运行我的安装程序。不太繁重,但我只是想知道是否有一种方法可以一步完成,以便 MCR 的安装方式与 .NET 和 C++ 运行时库的安装方式相同。

我确实尝试转到先决条件选项卡,但没有选择 MCR 的选项(不是我预期的)。我还尝试将 MCRInstaller.exe 添加到我的应用程序文件夹中。这几乎可行(令我惊讶的是)。 MCR 安装程序自动运行,似乎是最后一步。但是,它在距离很远之前就失败了,因为它感觉到另一个安装程序正在运行(这是我启动它的项目)并且用户被指示首先退出该安装程序。我相信我的用户会感到困惑,我希望让它更加无缝。

【问题讨论】:

CharithJ 下面链接到有关如何向安装程序添加自定义先决条件的问题:***.com/questions/1334436/… 谢谢。最初,当我单击该链接时,它也指向了另一个没有帮助的站点,它似乎链接到另一个 SO 问题。目前尚不清楚这是否适用于 MCR 和 VC++,但我会再次追求它。 【参考方案1】:

看here。

您可以复制设置并浏览到第二个屏幕中提到的那个位置。

或者看here。

【讨论】:

【参考方案2】:

虽然我找到了一个回复,但我得到了信息,但它并没有真正解决问题。我将不得不设置它不能(或可能不应该)完成的答案。不过,尝试设置中的第二个单选按钮提供了丰富的信息。当您这样做时,安装程​​序会为 .NET 和 C++ 可再发行文件创建文件夹。很高兴知道我是否有客户在安装时不想上网。

不幸的是,除了我在问题中提到的 MCR 安装程序失败之外,VC++ 安装程序也存在一些问题。当我去安装新版本时,VC++ 安装程序实际上想要运行重新安装。我完全不明白这一点。我可以看到它提供卸载。由于我将分发两个依赖于 .NET、VC++ 和 MCR 的程序,因此我不得不得出结论,我不应该让安装程序包罗万象。卸载/重新安装太令人困惑且不必要地冗长。 .NET 在幕后无缝处理的方式非常完美,但 VC++ 和 MCR 安装程序似乎不支持相同的方法。

我只是让最终用户进行三个安装,虽然不是很优雅,但我很确定这将在安装升级时产生最少的问题。

【讨论】:

以上是关于VS 2010 安装程序可以将 MCR 作为先决条件吗?的主要内容,如果未能解决你的问题,请参考以下文章

包括 MSMQ 作为我的应用程序的先决条件

InstallShield 先决条件(错误 -7067)

如何为指定的 Matlab 运行时 (MCR) 编译 Matlab 脚本

如何在 VS2010 中使用自定义许可证验证创建 msi 安装程序

VS2010 安装项目在程序卸载时运行 .exe 或 C# 代码

安装引导程序如何检测是不是安装了先决条件?