作为 C# 安装程序向导的一部分安装 Matlab MCR

Install Matlab MCR as part of the C# Installer Wizard

我用 Matlab 编写了一个程序 HelloApp,并使用 deploytool 将其打包为 .NET 程序集,如 here 所述。结果我得到了 helloapp.dll 库,我将其作为参考包含在我的 Visual Studio 2015 中,因此我可以直接从 C# 运行 Matlab 方法。要运行未安装Matlab的代码,最终用户至少需要安装Matlab Runtime (MCR)。

现在我想为我的 C# 程序创建一个安装程序。我发现 Visual Studio 2015 Installer Projects which provides some tools to create program setup wizard. The problem is, I don't know how to include download and setup of MCR package 作为安装过程中的一个步骤,以确保用户具有所有必需的先决条件,以便程序能够 运行。

好吧,这不是一个真正的答案,但是有问题的评论区太短了...

我对VS2015 Installer as I personnally use innosetup了解不多。无论如何要检查目标机器上是否安装了运行时,您可以查看注册表中是否存在以下键:

HKEY_LOCAL_MACHINE\SOFTWARE\MathWorks\MATLAB Runtime.0   

查看我的帖子 and 了解更多详情。

NB1:请注意,Matlab 运行时的安装程序非常大(大约 1 GB)。我不会将它与应用程序打包在一起进行部署,只是警告用户单独安装它。

NB2:我认为 Mathworks 在使用 deploytool 部署独立安装程序时打包 C:\Program Files\MATLAB\R2015b\toolbox\compiler\deploy\win64\InstallAgent.zip(~66MB)而不是 MCRInstall.exe(~1GB)以在安装期间下载运行时,但我不知道怎么用。