我正在MATLAB中编写程序以分发给Windows用户。我正在使用MATLAB编译器和MATLAB版本r2014a来创建程序。我可以使用MATLAB应用程序编译器创建一个Windows安装程序,它的工作原理可以接受。
但是,我希望安装程序要求我的用户在安装软件之前查看并接受许可协议。 MATLAB安装程序不提供这种可能性。
有人可以建议一种替代方法来打包我编译的MATLAB应用程序吗?我会接受一个两级安装程序,其中第一个安装程序提供解包MATLAB安装程序的许可条款,需要在第二个安装阶段运行。单相解决方案显然会更好。
答案 0 :(得分:5)
您可以使用inno setup(Windows免费安装程序)和inno script studio(编辑安装程序脚本的第三方界面)。
Inno setup还允许以pascal语言编写自定义代码,因此您甚至可以在开始安装之前检查目标机器上是否安装了matlab运行时:
[Code]
function IsMCR90Installed : Boolean;
begin
Result := RegKeyExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\MathWorks\MATLAB Runtime\9.0');
end;
function InitializeSetup(): Boolean;
begin
Result := true;
if (not IsMCR90Installed) then
begin
MsgBox('This setup requires the Matlab Component runtime v9.0.'#13'Please install the Matlab Component Runtime and run this setup again.', mbError, MB_OK) ;
Result:=false;
Exit;
end;
end;
注意:对于单阶段安装,您只能使用inno setup部署matlab编译器创建的可执行文件。
修改强>
要使用inno设置添加许可证页面,只需在安装程序脚本的[Setup]
部分设置指向许可证文本的指针即可。有关详细信息,请参阅http://www.jrsoftware.org/ishelp/index.php?topic=setup_licensefile。
如果要显示每种语言的自定义文本,另请参阅https://stackoverflow.com/a/12599237/684399。