Compiled Location of Data Files

5 visualizzazioni (ultimi 30 giorni)
Paul Huter
Paul Huter il 11 Dic 2012
I have a compiled "program" (GUI) that relies on data files. However, to get the progbram to read the data files, I need to include them in the compile. I am using an fopen() on the data file, but if it is not included in the compile, the files are not found. I would like to not have to include the files, as they change pretty regularly and I do not want to have to recompile each time.

Risposta accettata

Walter Roberson
Walter Roberson il 11 Dic 2012
The current directory of a compiled executable is not what you might expect. If you specify the full directory of the files when you fopen() then it should be able to find them.
  3 Commenti
Image Analyst
Image Analyst il 11 Dic 2012
Like Walter said, you don't. Don't store the data files where the executable was deployed because that's not the real executable. The real executable is in a different folder - one you wouldn't expect. The executable you're seeing is more like a self-extracting archive and it unpacks the real executable plus a bunch of other files to some secret folder. You're far, far better off storing your data files in some known folder, like in c:\ProgramData\MATLAB\YOUR_GUI or wherever. Then use fullfile() and exist() to check for them. You can store the last folder you looked to for those files in a mat file if you want, then you can read that upon startup to initialize the data folder to the last folder you used.
Paul Huter
Paul Huter il 11 Dic 2012
Got it! Thank you.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su MATLAB Compiler in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by