Problem with displaying output of executable

I have a function which produces a string output:
out = myfunction(arg1, arg2)
The last line of the function is disp(out).
I used the deploytool to produce an executable (for Windows). However, when I call myfunction arg1 arg2 in cmd, I do not see any output.
I know the function is working correctly because if I replace disp by writing to a file, that works.
Also what is strange is that if I replace disp() by error(), I do see the error message.
Has anybody had this problem?

 Respuesta aceptada

Kevin Holst
Kevin Holst el 27 de Mzo. de 2012

0 votos

If you're compiling it as a 'Windows Standalone Application' switch that to a 'Console Standalone Application'.

Más respuestas (3)

Antti
Antti el 26 de En. de 2018

7 votos

Note that in R2017b (and possibly beyond) on Windows 10, no output is printed on the Windows command prompt even if you launch the executable from command prompt, unless you uncheck "Do not display the Windows command shell (console) for execution" under "Additional runtime settings" in the Application Compiler tool of MATLAB Compiler.

5 comentarios

I guess that applies for leaving the semicolon off, but is that also the case if you explicitly call fprintf() to print something to the command window (consolw window)? Like if I do
fprintf('This goes to the command window.\n');
where, if anywhere, will that show up?
Ian Sullivan
Ian Sullivan el 15 de Ag. de 2018
Editada: Ian Sullivan el 15 de Ag. de 2018
Could you confirm that this is this new behaviour introduced in R2017b please? I am getting console output when using R2017a.
Antti
Antti el 16 de Ag. de 2018
If you leave the checkbox I mentioned above checked, then no output is shown on the command window, not even if you explicitly call fprintf. Everything is suppressed. But if you uncheck the checkbox, then leaving the semicolon off, and calling printing functions will output. This behavior is introduced in R2017b.
ratnesh pandey
ratnesh pandey el 29 de Jul. de 2020
@Antti Yes, that was the case with me. Thanks. I am using R2017b and only after unchecking the checkbox I am getting the result on console.
derrick burton
derrick burton el 14 de Dic. de 2023
Thanks !!

Iniciar sesión para comentar.

Image Analyst
Image Analyst el 27 de Mzo. de 2012

0 votos

Did you use the -e option to suppress the console window? If so there is no place for things like disp() and fprintf(1,...) to output to. Otherwise they should show up in the console window (the black box window).
Veronika
Veronika el 27 de Mzo. de 2012

0 votos

Kevin, your solution helped, thanks! I thought the problem was elsewhere and did not consider the type of compiling.
Image Analyst, I used the deploytool with the default option (probably without supressing, because it works now).
Thanks for the quick replies!

Categorías

Más información sobre Standalone Applications en Centro de ayuda y File Exchange.

Preguntada:

el 27 de Mzo. de 2012

Comentada:

el 14 de Dic. de 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by