MATLAB Answers


How to write and access one file from another when using .exe file converted by MATLAB Compiler?

Asked by Sarah Ghosh on 27 Jul 2013

I have a .m file (which calls a GUI) that I need to convert to .exe through MATLAB Compiler( to make it standalone). However, the .m file is written in such a way that it writes some new .m files (when a button is pressed). And when another button is pressed, those written function are executed.

The problem is that the .m file is converted to .exe fine. But, the other .m files (those that are written from within the main .m file) are not written (or converted to .exe). I am not able to figure out a way to fix this.

Thanks in advance for any help.


If the app creates m-files to execute when it runs, how in the world would you expect the compiler to be able to compile them before that?

Your only choice for truly standalone would be to have a predefined set of functions to select from. If you're adamant it must be dynamic then you've a much bigger problem.

Log in to comment.

1 Answer

Answer by Walter Roberson
on 29 Jul 2013

Use the ctfroot() to figure out which directory the executable has unpacked itself into. Write the new .m files into there. eval() or evalc() or feval() the new .m files.


Log in to comment.

Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!