Is there a function that returns the full path of currently executing compiled program?
显示 更早的评论
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.
回答(1 个)
Image Analyst
2013-4-22
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 个评论
Bing
2013-4-22
Image Analyst
2013-4-22
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.
类别
在 帮助中心 和 File Exchange 中查找有关 C Shared Library Integration 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!