0 前言
最近好多朋友咨询关于 App designer或者GUI设计程序想要封装成独立运行的“exe”文件,但是总会遇到怎么封装、封装后不能脱机运行等问题。这篇文章将非常详细地阐述怎么封装、封装后怎么脱机运行等问题。如果还无法解决,再付费咨询。
一、概述
首先,需要知道MATLAB程序在封装后,它是怎么脱机运行的。有两种方式,一种是未安装MATLAB的计算机上运行,另一种是在基于Web浏览器运行,但是只有使用app designer设计的应用程序才可以部署在Internet环境中运行。
然后,不是封装成“exe”后双击就可以正常运行的。每种方式都需要额外的程序支持运行,需要安装和配置相应的程序,其中:
(1)在未安装MATLAB的计算机上运行打包应用程序时,用户必须安装MATLAB Runtim或者指定MATLAB runtime网络安装的位置;因此,需要下载和当前封装程序的MATLAB版本匹配的runtime,下载地址和安装如下链接:runtime下载安装链接
(2)在Web浏览器中运行MATLAB应用程序,运行需要完成Web app Server的安装和配置。
最后,分别就这两种情况进行教程讲解,并以实例进行讲解说明。
二、基于runtime运行(独立于桌面运行)
1.从MATLAB创建独立运行程序
(1)在MATLAB Apps选项卡上,点击Apps部分最右侧 的箭头。在应用程序部署中,单击应用程序编译器
![](https://i-blog.csdnimg.cn/blog_migrate/fcd5ea9feda63c91891676824df27806.png)
(2)在MATLAB Compiler项目窗口中,指定要部署的 MATLAB 应用程序的主文件:在工具条的主文件部分,单击
![](https://i-blog.csdnimg.cn/blog_migrate/e6f29b81d2ef115cc57d19db517e5906.png)
主文件
。
![](https://i-blog.csdnimg.cn/blog_migrate/6a4faa2c8f8802a897791de383b0f7cb.png)
(3)选择打包选项,“runtime downloaded from web”和“runtime included in package”,将下载了的“Runtime”包含到打包选项中。
![](https://i-blog.csdnimg.cn/blog_migrate/441ab039fb2f23195680aafdbb361de5.png)
(4)自定义打包的应用程序信息及外观
2.运行程序
双击"MyAppInstall.exe",如果运行的计算机上还没有安装MATLAB RUNTIME,选择MATLAB Runtime库中的安装文件夹,然后点击Next,安装该文件。
三、基于Web浏览器运行
1.创建基于Web的“exe”文件
在使用App designer创建了一个应用程序后,打包程序如下:
(1)在命令行中键入“Web App Compiler”,打开Web app Complier
![](https://i-blog.csdnimg.cn/blog_migrate/d349b4ec47306482b9cea67ae573bdae.png)
(2)在工具条的MAIN FILE部分,单击
![](https://i-blog.csdnimg.cn/blog_migrate/e41b53da89305aa114d33e9963cc2d7e.png)
.mlapp
文件添加 到项目中。
(3)在 App Designer 中通过点击Edit App Details来编辑有关应用程序的信息
(4)选中“将 Web 应用程序复制到服务器应用程序文件夹”复选框,并指定服务器上要.ctf
自动复制Web 应用程序存档(文件)的应用程序文件夹的路径。如果没有选中此复选框,Web 应用程序编译器将.ctf
在项目文件夹中创建 Web 应用程序存档(文件),必须手动将 Web 应用程序(.ctf
文件)复制或上传到服务器上的应用程序文件夹。
(5)在应用程序运行所需的文件部分添加支持文件(如果有)。支持文件包括任何 MAT 文件、Web 应用程序使用的图像或MATLAB Compiler™找不到的用户编写的 MATLAB 函数。
(6)单击保存项目”对话框中,指定项目名称和要保存 Web 应用项目的位置。
在打开的“(7)打包完成后,在“package”对话框中,单击打开输出文件夹,将会打开饱含以下文件的项目文件夹:
-
webAppArchiveName
.ctf -
mccExcludedFiles.log
-
PackagingLog.html
-
requiredMCRProducts.txt
(8)运行Web应用程序时,需要部署程序
2.部署Web应用程序
(1)准备工作
先安装MATLAB Web App Server产品(安装和卸载 MATLAB Web App Server教程)
身份验证,用于访问部署在服务器上的应用程序;验证教程
验证Role-based Access时被指定为作者:配置教程
(2)设置两种方式
-
将Web app编译器生成的“.ctf”文件复制到服务器配置的 apps 文件夹。
-
将Web app编译器生成的“.ctf”文件上传到服务器配置的 apps 文件夹。但这种方式需要安装MATLAB Web App Server
(3)具体的步骤
-
导航到服务器配置的 Web 应用程序主页。可以通过在系统命令行中执行(MATLAB Web App Server)或通过从管理服务器来获取主页的 URL。主页 URL 的格式为:
webapps-status
http://
webAppServer
:PortNumber
/webapps/home/index.html这里,
webAppServer
是 Web 应用服务器主机名,PortNumber
是配置服务器时指定的端口。 -
点击
在 Web 应用程序主页上打开
-
点击
并导航到 Web App Compiler(在
-
选择文件
并单击webAppArchiveName
.ctf
3.运行Web程序
(1)单击主页上的 Web 应用程序即可运行
(2)要查看所有 Web 应用程序及其状态和诊断消息的列表,可以单击主页右上角的诊断链接
(3)要返回 Web 应用程序的主页,可以单击页面顶部面包屑路径上的MATLAB Web Apps。
四、实例
1. 打开一个设计好的app程序,这里使用自带的示例“使用仪表控件”的那个。
2. 封装
在封装时在菜单栏选择“共享”,共有三个内容,后两个是用于独立于MATLAB运行的,这里先介绍“独立桌面的app”
然后直接进入封装
封装后有这样几个文件,上面两个文件是用于重新封装,第三个文件用于检测”exe“文件是否正常工作,最后一个"html”文件是封装记录