Why does Copyfile not work in Matlab Deployed GUI?
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Ravi Goyal
le 4 Déc 2015
Commenté : Ravi Goyal
le 4 Déc 2015
I build a GUI which I deploy, using the Application compiler. I want to create a folder and copy the folder to a location. This is my code:
try
%MODEL FOLDER EXISTS --> COPY ELEMENTS
if exist('C:\All_Fit\models','dir')==7
[~,message]=copyfile('models/*','C:/All_Fit/models','f'); %SLASH INSTEAD OF BACKSLASH
warndlg(message)
model_folder='C:\All_Fit\models';
%MODEL DOES NOT EXIST --> CREATE FOLDER THEN COPY ELEMENTS
elseif exist('C:\All_Fit\models','dir')==0
mkdir('C:\All_Fit','models')
[~,message]=copyfile('models/*','C:/All_Fit/models','f'); %SLASH INSTEAD OF BACKSLASH
warndlg(message)
model_folder='C:\All_Fit\models';
%MODEL FOLDER FROM INTERNAL FOLDER
else
warndlg(sprintf('No model molder could be found or created. The internally definded models are used.'))
model_folder='models';
end
catch
warndlg(sprintf('No Model Folder could be found or created. The internally definded models are used.'))
model_folder='models';
end
I have tried different syntax for copyfile and all of the succeded under pure Matlab. For instance:
copyfile('models','C:\All_Fit\models','f');
The message I get from the warndlg is 'No matching files were found'. Yet the catch gets the folder and uses them.
Why is that not working in the exe. since it works like a charm if not deployed? Thanks a lot. Ravi
0 commentaires
Réponse acceptée
Walter Roberson
le 4 Déc 2015
You are copying from a relative path, not from an absolute path. That can only succeed if you are cd'd to the correct location. You would be safer copying an absolute path.
3 commentaires
Walter Roberson
le 4 Déc 2015
Modifié(e) : Walter Roberson
le 4 Déc 2015
... and why isn't your code checking that the source directory exists?
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur MATLAB Compiler dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!