为什么Matlab独立应用程序退出时出错;TooManyOutputs";?

为什么Matlab独立应用程序退出时出错;TooManyOutputs";?,matlab,matlab-compiler,mcc,Matlab,Matlab Compiler,Mcc,我在Matlab中创建了一个独立的应用程序,实际上它可以工作,它显示所需的输出,但它会立即关闭,甚至没有足够的时间检查输出并读取DOS(独立模式)上的错误消息,该错误消息说: MATLAB:TooManyOutputs Warning: 1 visible figure(s) exist at MCR Termination If your application has terminated unexpectedly, please note that applications gener

我在Matlab中创建了一个独立的应用程序,实际上它可以工作,它显示所需的输出,但它会立即关闭,甚至没有足够的时间检查输出并读取DOS(独立模式)上的错误消息,该错误消息说:

MATLAB:TooManyOutputs 
Warning: 1 visible figure(s) exist at MCR Termination

If your application has terminated unexpectedly, please note that
applications generated by the MATLAB Compiler terminate when there are no
visible figure windows. See the documentation for WaitForFiguresToDie and
WAITFORCALLBACKS for more information.

如果有任何帮助,我们将不胜感激。

查看邮件的第一行,
TooManyOutputs
表明您在表单的某个地方有一个作业

[a b] = somefunction(parameters)
因此,您希望将
somefunction
的输出放入
a
b
,但是
somefunction
只返回一个参数。此错误导致程序终止,然后MCR在不关闭图形窗口的情况下实现程序退出,从而导致后面的错误消息

如果我对
TooManyOutputs
的看法是正确的,那么在Matlab中直接运行代码时,应该已经有了错误消息;在创建独立应用程序之前,您是否尝试过这样做


如果这样做没有帮助,您可能应该发布一些代码,以便更清楚地说明问题可能来自何处。

感谢您的回复,因此我想这可能会导致错误[xi,yi]=getpts1(get(p1,'Parent');但是我在matlab命令窗口上没有得到相同的错误,它工作得很好。如何修复它:D
getpts1
似乎不是一个标准函数,因此我无法在这方面提供帮助。如果您的意思是
getpts
,这可能不是您的问题,因为该函数确实返回两个值。我将其更改为
getpts
,并且它没有引起问题,它仍然可以正常工作,但仍然会得到相同的错误,那么这个
[y,x,z]=size(newimg)呢这会导致错误吗?