Name of deployed app

9 vues (au cours des 30 derniers jours)
Roberto Gentile
Roberto Gentile le 20 Août 2019
Commenté : Anna Weeks le 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

Réponse acceptée

Subhadeep Koley
Subhadeep Koley le 23 Août 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 commentaires
Jiri Hajek
Jiri Hajek le 22 Juil 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 le 3 Nov 2023
filepath = fileparts(mfilename('fullpath'));
Appname = strtok(filepath(numel(ctfroot)+1:end),'\');

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Application Deployment dans Help Center et File Exchange

Produits


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by