Name of deployed app

10 views (last 30 days)
Roberto Gentile
Roberto Gentile on 20 Aug 2019
Commented: Anna Weeks on 3 Nov 2023
Hello everyone,
Some months ago I deployed a number of apps using the matlab compiler. I used to add a folder "images" within the "files required to the application to run" and successfully access it by doing:
fullfile(cftroot,'images')
After updating to 2019a, it seems that the folder hierarchy of the app is changed, and the images folder is located in a subfolder
fileName = 'fileName'; % first 12 characters of the name given in the matlab compiler
fullfile(cftroot, fileName, 'images')
My question is simple (I hope):
is there a function that allows me to automatically retrieve "fileName"?
(So that if I change the name of the deployed file, I don't need to change the code)
Thank you very much,
Rob

Accepted Answer

Subhadeep Koley
Subhadeep Koley on 23 Aug 2019
MATLAB provides fileparts and mfilename function to get parts of file name and to get file name of currently running code.
Therefore, using the following code in the startupFcn callback of your code might help.
[filepath,name,ext] = fileparts(mfilename('fullpath'));
Here the variable "name" contains the name of the current running file.
  3 Comments
Jiri Hajek
Jiri Hajek on 22 Jul 2021
I'm looking for an answer to the same question, but this one is not really correct. An app name (exe file) may be different from the m-file before compilation. The mfilename function return the name of the original m-file, not of the exe-file.
Any help would be much appreciated...
Anna Weeks
Anna Weeks on 3 Nov 2023
filepath = fileparts(mfilename('fullpath'));
Appname = strtok(filepath(numel(ctfroot)+1:end),'\');

Sign in to comment.

More Answers (0)

Categories

Find more on Application Deployment in Help Center and File Exchange

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!