MATLAB如何打开chm文件

MATLAB如何打开.chm文件

为了帮助人们理解一个软件的使用,一般会配备一个帮助文档,本文主要介绍下如何利用MATLAB如何打开chm文件。
代码主要如下:(HELP.chm文件为帮助文件)

p1 = mfilename('fullpath'); %获得.m文件的路径
i = strfind(p1,'\');
p1 = p1(1:i(end));
cd(p1);         %修改了工作路径,即MATLAB栏中显示的文件夹
if   exist("HELP.chm","file")            % 非0,表示存在此文件
    !HELP.chm
else
    errordlg(p1+"HELP文件不存在!",'错误提示');
end

此时,在MATLAB中运行是可行的。
MATLAB如何打开chm文件_第1张图片
但是将软件生成为.exe文件后,会提示错误:
MATLAB如何打开chm文件_第2张图片
分析可以知道,此地址是程序执行的地址,而非程序所在地址。

1.利用生成.exe文件及cd命令,可知上述地址确实为程序执行的地址,如下图所示。
在这里插入图片描述
2.利用生成.exe文件及pwd命令,可知此时得到地址确实为程序所在地址,如下图所示。MATLAB如何打开chm文件_第3张图片
此时,更改代码如下:

p2=pwd;
if   exist(p2+"\HELP.chm","file")~=0            %0,表示存在此文件
    !HELP.chm
else
    errordlg(p2+"\HELP文件不存在!",'错误提示');
end

生成.exe软件后,点击帮助可弹出帮助文档,当再次打开时,报错如下:
MATLAB如何打开chm文件_第4张图片
经过一番思考,采取了曲线救国的思路,保存第一次的地址作为全局变量╮(╯▽╰)╭,代码如下:

global address;
global flag_address;
if flag_address==false
    address=pwd;
end
if   exist(address+"\HELP.chm","file")~=0            %0,表示存在此文件
    !HELP.chm
    flag_address=true;
else
    errordlg(address+"\HELP文件不存在!",'错误提示');
end

如此以来,.exe文件可打开HELP.chm帮助文档。

参考

你可能感兴趣的:(MATLAB基础处理,matlab,gui,exe,chm)