Is there a function that returns the full path of currently executing compiled program?
Show older comments
This question is for both Unix and Winodws platforms, but more for Unix.
I have a compiled Matlab program that will be deployed to some path. But I don't know what the path will be during coding. Is there a function I can use to return the full path of the executing program when it's deployed and running?
For example, if the program is deployed to /home/folderA, the function will return '/home/folderA/app.exe'.
Will need this capabilities to locate other files in the same path, etc.
Thanks in advance.
Answers (1)
Image Analyst
on 22 Apr 2013
Did you try mfilename? Otherwise, here's a snippet I found in my code:
function [thePath] = ShowPath()
% Show EXE path:
if isdeployed % Stand-alone mode.
[status, result] = system('set PATH');
thePath = char(regexpi(result, 'Path=(.*?);', 'tokens', 'once'));
else % Running from MATLAB.
thePath=pwd;
end
return;
2 Comments
Bing
on 22 Apr 2013
Image Analyst
on 22 Apr 2013
Look in that folder. Your executable is probably there. As you may or may not know, the exe you installed is not the exe that actually runs - it's really a self unarchiving package that installs the real exe to some secret folder.
Categories
Find more on C Shared Library Integration in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!