<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.3.1" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>
<channel>
	<title>Comments on: Managing Non-Deployable Functions in a Compiled Application</title>
	<link>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/</link>
	<description>Loren Shure  works on design of the MATLAB language at &#60;a href="http://www.mathworks.com/"&#62;The MathWorks&#60;/a&#62;. She writes here about once a week on MATLAB programming and related topics. &#60;br&#62;&#60;br&#62;&#60;a href="/images/loren-full.jpg"&#62;&#60;img src="/images/loren.jpg"&#62;&#60;/a&#62;</description>
	<pubDate>Mon, 23 Nov 2009 01:32:32 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.1</generator>
		<item>
		<title>By: Michele Squillante</title>
		<link>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-30667</link>
		<dc:creator>Michele Squillante</dc:creator>
		<pubDate>Thu, 08 Oct 2009 10:24:45 +0000</pubDate>
		<guid>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-30667</guid>
		<description>I've tried to modify some Matlab built-in functions (specifically some of the built-in dialog boxes, like errordlg or warndlg) and then use them in a compiled application. Seems like the modifications are not effective in the compiled software. Is there any way to work around this issue?

Thank you very much</description>
		<content:encoded><![CDATA[<p>I&#8217;ve tried to modify some Matlab built-in functions (specifically some of the built-in dialog boxes, like errordlg or warndlg) and then use them in a compiled application. Seems like the modifications are not effective in the compiled software. Is there any way to work around this issue?</p>
<p>Thank you very much</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ofra</title>
		<link>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-30525</link>
		<dc:creator>Ofra</dc:creator>
		<pubDate>Wed, 12 Aug 2009 11:12:56 +0000</pubDate>
		<guid>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-30525</guid>
		<description>Is there any light version of plotedit or plottolls that can be compiled with standalone application. 
I need to give the user the option to control the following properties of a figure: title, xlabel, ylabel, axis, line colors in the plotted graph.</description>
		<content:encoded><![CDATA[<p>Is there any light version of plotedit or plottolls that can be compiled with standalone application.<br />
I need to give the user the option to control the following properties of a figure: title, xlabel, ylabel, axis, line colors in the plotted graph.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: OkinawaDolphin</title>
		<link>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29840</link>
		<dc:creator>OkinawaDolphin</dc:creator>
		<pubDate>Tue, 04 Nov 2008 14:25:52 +0000</pubDate>
		<guid>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29840</guid>
		<description>Peter Webb,

my question is about creating PDFs using deployed applications.

When trying to use printdlg, MLint says "MCC does not permit the PRINTDLG function". Indeed I get a strange error message when calling it in a deployed program. According to MLint, print is not permitted either. 

It seems it is impossible to create PDFs from deployed applications. Trying to print the figure clicking the printer symbol and choosing the PDF printer works, but the results are not satisfactory.

Is there any reason for not permitting the creation of PDFs from deployed applications or is M code generated during creating a PDF?</description>
		<content:encoded><![CDATA[<p>Peter Webb,</p>
<p>my question is about creating PDFs using deployed applications.</p>
<p>When trying to use printdlg, MLint says &#8220;MCC does not permit the PRINTDLG function&#8221;. Indeed I get a strange error message when calling it in a deployed program. According to MLint, print is not permitted either. </p>
<p>It seems it is impossible to create PDFs from deployed applications. Trying to print the figure clicking the printer symbol and choosing the PDF printer works, but the results are not satisfactory.</p>
<p>Is there any reason for not permitting the creation of PDFs from deployed applications or is M code generated during creating a PDF?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter Webb</title>
		<link>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29836</link>
		<dc:creator>Peter Webb</dc:creator>
		<pubDate>Mon, 03 Nov 2008 21:21:53 +0000</pubDate>
		<guid>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29836</guid>
		<description>OkinawaDolphin,

1. printdlg works in deployed applications, at least as of roughly 2006. Note that deployed applications only support the single argument form of printdlg, i.e., printdlg(figure_handle). 

2. In deployed applications you cannot print PDFs via deployprint (either interactively or not), but you should be able to create PDFs by calling print -dpdf directly.

3. Regarding Neural Networks, the use of generated MATLAB functions is a core part of the toolbox's functionality; until that changes, the deployability of Neural Networks will be limited, as detailed here:

http://www.mathworks.com/products/compiler/compiler_support.html</description>
		<content:encoded><![CDATA[<p>OkinawaDolphin,</p>
<p>1. printdlg works in deployed applications, at least as of roughly 2006. Note that deployed applications only support the single argument form of printdlg, i.e., printdlg(figure_handle). </p>
<p>2. In deployed applications you cannot print PDFs via deployprint (either interactively or not), but you should be able to create PDFs by calling print -dpdf directly.</p>
<p>3. Regarding Neural Networks, the use of generated MATLAB functions is a core part of the toolbox&#8217;s functionality; until that changes, the deployability of Neural Networks will be limited, as detailed here:</p>
<p><a href="http://www.mathworks.com/products/compiler/compiler_support.html" rel="nofollow">http://www.mathworks.com/products/compiler/compiler_support.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter Webb</title>
		<link>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29835</link>
		<dc:creator>Peter Webb</dc:creator>
		<pubDate>Mon, 03 Nov 2008 21:03:29 +0000</pubDate>
		<guid>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29835</guid>
		<description>Martin and wobbly,

Try-catch is really the best way to manage errors in a deployed application. Having a global OnError function causes problems when you've got more than one compiled component linked into the same application -- if multiple components report an error, which should the function report? 

However, each compiled component can control how its own error messages are displayed or logged by registering an error output function. See the online documentation for more details:

http://www.mathworks.com/access/helpdesk/help/toolbox/compiler/f2-998954.html

(Click on the "Print and Error Handling Functions" link.)</description>
		<content:encoded><![CDATA[<p>Martin and wobbly,</p>
<p>Try-catch is really the best way to manage errors in a deployed application. Having a global OnError function causes problems when you&#8217;ve got more than one compiled component linked into the same application &#8212; if multiple components report an error, which should the function report? </p>
<p>However, each compiled component can control how its own error messages are displayed or logged by registering an error output function. See the online documentation for more details:</p>
<p><a href="http://www.mathworks.com/access/helpdesk/help/toolbox/compiler/f2-998954.html" rel="nofollow">http://www.mathworks.com/access/helpdesk/help/toolbox/compiler/f2-998954.html</a></p>
<p>(Click on the &#8220;Print and Error Handling Functions&#8221; link.)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: OkinawaDolphin</title>
		<link>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29834</link>
		<dc:creator>OkinawaDolphin</dc:creator>
		<pubDate>Mon, 03 Nov 2008 07:27:12 +0000</pubDate>
		<guid>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29834</guid>
		<description>Some questions about printing figures in deployed programs:

1. When I write printdlg(handles.NameOfThisFigure) in a callback function, there is a warning stating that MCC does not permit printdlg. My Matlab version is R2007a. Has printdlg() been deployable in more recent versions?

2. In Matlab I can print figures as PDF files. In deployed applications this option is still offered, but I always get an error when trying to do this. Is there any other way of exporting figures to PDF files without purchasing the Report Generator first?

About neural networks: I do not fully understand why training a neural network requires generating M code. Is there no possibility to develop a training function that just generates the data, e. g. a cell array or struct of weight vectors? 

The Neural Network Toolbox is useless for anyone who wants to deploy his or her programs. It is possible that a developper of a program retrains a network if necessary. However, this is not necessarily a developer's job. The user of a program can do this, too - maybe better than a developper who is a specialist in pattern recognition, but not in the application domain (e. g. surface inspection, medical diagnosis, measurement and control).</description>
		<content:encoded><![CDATA[<p>Some questions about printing figures in deployed programs:</p>
<p>1. When I write printdlg(handles.NameOfThisFigure) in a callback function, there is a warning stating that MCC does not permit printdlg. My Matlab version is R2007a. Has printdlg() been deployable in more recent versions?</p>
<p>2. In Matlab I can print figures as PDF files. In deployed applications this option is still offered, but I always get an error when trying to do this. Is there any other way of exporting figures to PDF files without purchasing the Report Generator first?</p>
<p>About neural networks: I do not fully understand why training a neural network requires generating M code. Is there no possibility to develop a training function that just generates the data, e. g. a cell array or struct of weight vectors? </p>
<p>The Neural Network Toolbox is useless for anyone who wants to deploy his or her programs. It is possible that a developper of a program retrains a network if necessary. However, this is not necessarily a developer&#8217;s job. The user of a program can do this, too - maybe better than a developper who is a specialist in pattern recognition, but not in the application domain (e. g. surface inspection, medical diagnosis, measurement and control).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: wobbly</title>
		<link>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29767</link>
		<dc:creator>wobbly</dc:creator>
		<pubDate>Wed, 24 Sep 2008 00:12:36 +0000</pubDate>
		<guid>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29767</guid>
		<description>I have frequently missed a global "onerror" function such as VB has.

It is a big problem that an error causes a crash, and the console disappears without any error messages being visible to the users.
OnError would allow the error message to be at least displayed in a dialog before exiting.</description>
		<content:encoded><![CDATA[<p>I have frequently missed a global &#8220;onerror&#8221; function such as VB has.</p>
<p>It is a big problem that an error causes a crash, and the console disappears without any error messages being visible to the users.<br />
OnError would allow the error message to be at least displayed in a dialog before exiting.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Martin V</title>
		<link>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29762</link>
		<dc:creator>Martin V</dc:creator>
		<pubDate>Mon, 22 Sep 2008 07:57:23 +0000</pubDate>
		<guid>http://blogs.mathworks.com/loren/2008/09/17/managing-non-deployable-functions-in-a-compiled-application/#comment-29762</guid>
		<description>Hi,

Is there a way to prevent the whole standalone application (generated with mcc -m) to crash when a single error occurs? I have a large GUI program with lots of callbacks. If one of the users of my program does something unintended causing an error in a callback function I would like the GUI program to continue running, like it does in a normal MATLAB session, and not crash the program. Is there a smart way to solve this problem other than by a lot of try-catching? 

Best regards,
Martin</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>Is there a way to prevent the whole standalone application (generated with mcc -m) to crash when a single error occurs? I have a large GUI program with lots of callbacks. If one of the users of my program does something unintended causing an error in a callback function I would like the GUI program to continue running, like it does in a normal MATLAB session, and not crash the program. Is there a smart way to solve this problem other than by a lot of try-catching? </p>
<p>Best regards,<br />
Martin</p>
]]></content:encoded>
	</item>
</channel>
</rss>
