超链接导致已编译的 MATLAB 应用程序崩溃

Hyperlink causes compiled MATLAB application to crash

我有一个已编译的 matlab 应用程序,它有一个图形用户界面。此 gui 还包含一个网页,index.html。在html,有一个hyperlink到一个网站。单击此 link 时,我希望 matlab 在外部浏览器中加载网页。目前,这是我使用的 hyperlink:

<a href="matlab:web('http://www.google.com','-browser')">Help</a>

但是,当点击时,编译的程序立即崩溃并关闭。当我从 matlab 中启动程序时,这不会发生;在这种情况下,它按预期(和想要)工作。只有在编译应用程序时才会出现效果。为什么是这样?有什么办法可以解决吗?

编辑:这是一个简单的可验证示例等

首先是简单的matlab代码:

% Create a blank figure window
f=figure('Name','Browser GUI Fail','Units','norm');

% Add the browser object
com.mathworks.mlwidgets.html.HTMLRenderer.setUseWebRenderer(false);
jObject = com.mathworks.mlwidgets.html.HTMLBrowserPanel;
[browser,container] = javacomponent(jObject, [], f);

set(container,'Units','normalized','Position',[0 0 1 1 ]);
url=['file:/'  which('index.html') ];
browser.setCurrentLocation(url);

其次,html 文件,index.html

<!DOCTYPE html>
<html>
<body>

<p>stuff, anything at all <a href="matlab:web('http://www.google.com','-browser')">Help</a> </p>

</body>
</html>

link 在程序的编译版本中失败。我在 Windows,并使用 2014b。

我在 Windows 编译的 GUI 中遇到了类似的问题,我使用 dos 调用解决了它。

dos('start http://www.google.com');