Path: news.mathworks.com!not-for-mail
From: "Matthew Wade" <cosmicspacepig@googlemail.com>
Newsgroups: comp.soft-sys.matlab
Subject: Re: Matlab path issues
Date: Wed, 20 Aug 2008 10:31:02 +0000 (UTC)
Organization: ttz-Bremerhaven
Lines: 104
Message-ID: <g8grp6$kbo$1@fred.mathworks.com>
References: <g8bhvf$ail$1@fred.mathworks.com> <411948.1219058896499.JavaMail.jakarta@nitrogen.mathforum.org>
Reply-To: "Matthew Wade" <cosmicspacepig@googlemail.com>
NNTP-Posting-Host: webapp-05-blr.mathworks.com
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Trace: fred.mathworks.com 1219228262 20856 172.30.248.35 (20 Aug 2008 10:31:02 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Wed, 20 Aug 2008 10:31:02 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 1052756
Xref: news.mathworks.com comp.soft-sys.matlab:486400



Thanks for your help.

However, the problem I now have is something like this:

1. I have a statement 

if ~isdeployed

...do normal actions

else
try
a=which('file.xls')
xlswrite((fileparts(a),'\file.xls'),options)
end
end

I have realised the main problem is with the Which function.

Running the application via Matlab gives no problems. But 
running the deployed function with which looks ONLY in the 
CTF archive folder - as file.xls is not located there, the 
application stops.

I know I can add MAT files to the archive, but XLS not.

There must be a way for the deployed application to find a 
file anywhere on the path and provide the correct location 
text?

Any ideas
Thanks
Matt




Bill August <hui.song@beds.ac.uk> wrote in message 
<411948.1219058896499.JavaMail.jakarta@nitrogen.mathforum.or
g>...
> > Hi,
> > 
> > I have an application (GUI) that also is compiled as
> > a 
> > stand-alone executable to be run on other machines.
> > 
> > 1. The GUI has some functions that require data to be
> > 
> > saved/called from specific paths, e.g. 
> > C:/Matlab7.1/work/Results
> > 
> > 2. To ensure the data is stored in the correct
> > folders, I 
> > use cd pathname, or xlswrite('pathname',data), for
> > example.
> > 
> > 3. For some time, I was able to specify the pathname
> > as 
> > only /Results, and this enabled flexibility - now I
> > get 
> > error messages (unknown directory) and cannot trace
> > back 
> > the problem - I now have to use the complete
> > pathname.
> > 
> > 4. When I install the stand-alone executable on a new
> > 
> > machine, the problem will occur that I do not have
> > the same 
> > pathname as on the host computer, so when the script
> > cd or 
> > xlswrite is executed with a specifie path, there will
> > be an 
> > error.
> > 
> > Can anyone think of a way to specify
> > folders/directories 
> > that can be generic to any machine? e.g. a function
> > that 
> > creates a folder "Results" in a common and sensible 
> > location (i.e. the Program location f?r the
> > executable and 
> > the work folder for the original -m files).
> > 
> > Thanks
> > Matt
> Hi
> To me I always use the global variable.
> Add these code to the main function, and you can use the 
relative path base on the root dir. 
> global APP_ROOTDIR ;
> APP_ROOTDIR = which('APP_Start') ;
> CWIND_ROOTDIR = fileparts(APP_ROOTDIR) ;
> if isempty(APP_ROOTDIR)
>    warning('Please change directory to the root, then 
start it again.') ;
>     return ;
> else
> end
> 
> 
> Message was edited by: Bill August
>