Standalone App installation folder

I amtrying to write miltilanguage app and i would like to keep track of the user prefences. I would like to use a mat file to store the last options user selected and I would like to keep it in the installation folder. How can I read it?
AppFolder=pwd;
returns the intended address only if the App is run directly from the installation folder. If run using desktop link it returns the desktop address.
files = matlab.apputil.getInstalledAppInfo;
[path,~,~] = fileparts(files(1).location)
throws either "Index exceeds the number of array elements (0)." when trying to access files(1).location when executed from Matlab command line or App Designer or "Cannot resolve matlab.apputil.getInstalledAppInfo" when executed from the standalone app.
How can I get the installation folder name to be able to store metadata neatly? Preferrably the way I can compile for Windows and linux without changing the code much.

2 个评论

Addenum: Where are 'Files required for your application to run' installed and how can I access them?
I have the same question, were you able to resolve this?

请先登录,再进行评论。

回答(2 个)

Rik
Rik 2021-8-23

I personally use this function to store persistent files regardless of OS and runtime version: GetWritableFolder.

Arturo Pino
Arturo Pino 2021-8-23
I was able to resolve this with this solution:
[~, result] = system('path');
appDir = char(regexpi(result, 'Path=(.*?);', 'tokens', 'once'));
Matlab adds the path of the stand-alone desktop app to the front system path on every session, so this function checks for the first entry on PATH. This worked really well for me.

类别

帮助中心File Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by