comp.lang.ada
 help / color / mirror / Atom feed
From: Niklas Holsti <niklas.holsti@nospam.please>
Subject: Re: How to get the application path
Date: Tue, 24 Jul 2007 14:44:16 +0300
Date: 2007-07-24T14:44:16+03:00	[thread overview]
Message-ID: <46a5e4e1$0$27850$39db0f71@news.song.fi> (raw)
In-Reply-To: <ud4yiawe9.fsf@stephe-leake.org>

Stephen Leake wrote:
> Adam Beneschan <adam@irvine.com> writes:
> 
> 
>>On Jul 23, 5:34 am, Stephen Leake <stephen_le...@stephe-leake.org>
>>wrote:
>>
>>>Rangdalf <rangd...@hotmail.com> writes:
>>>
>>>>Hi,
>>>
>>>>In C# there is something like Application.startupPath. Is there a
>>>>package or function to get this path.
>>>>I can get the current directory but I need the application one.
>>>
>>>In Ada 95, Ada.Command_Line.Command_Name returns the executable name,
>>>which usually (not always) has the full path
...
>>If we assume that Command_Name returns the name of some (executable)
>>file that may or may not be a full path name, then
>>Ada.Directories.Full_Name (Ada.Command_Line.Command_Name) should
>>return the full path, 
> 
> 
> Yes, this is the right solution.

I hardly think so. As I understand it, Full_Name is meant to expand 
simple file names like "file.txt" and relative file-names like 
"../../foo/file.txt" into full names by using the default directory and 
expanding "abbreviations" (A.16 (47)).

If the Command_Name is simply "bong.exe", you cannot expect Full_Name to 
search through the file system to find the directory that contains 
"bong.exe". There could be several such directories. Full_Name cannot 
use the PATH envinroment variable to find the directory because PATH 
only applies to executable files and Full_Name should apply to all files.

If Command_Name gives you only the simple name, and you want the full 
name, I think you must use Ada.Environment_Variables to get the value of 
PATH and then scan the PATH directories for the Command_Name. But then 
it would be simpler to just put the "application path" into a well-named 
environment variable and forget about Command_Name.

-- 
Niklas Holsti
Tidorum Ltd
niklas holsti tidorum fi
       .      @       .



  reply	other threads:[~2007-07-24 11:44 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-23  7:20 How to get the application path Rangdalf
2007-07-23 12:06 ` qouify
2007-07-23 12:34 ` Stephen Leake
2007-07-23 15:27   ` Adam Beneschan
2007-07-23 16:27     ` Markus E Leypold
2007-07-24 11:14       ` Stephen Leake
2007-07-24 11:35         ` Markus E Leypold
2007-07-23 16:37     ` Dmitry A. Kazakov
2007-07-24 11:11     ` Stephen Leake
2007-07-24 11:44       ` Niklas Holsti [this message]
2007-07-24 19:33         ` Randy Brukardt
2007-07-24 20:30           ` Niklas Holsti
2007-07-24 22:01             ` Markus E Leypold
2007-07-24 21:56           ` Markus E Leypold
2007-07-26 10:39             ` Stephen Leake
2007-07-30 23:38               ` Markus E.L.
2007-08-02  4:31                 ` Randy Brukardt
2007-08-02 22:23                   ` Markus E.L. 2
2007-07-24 14:07       ` Robert A Duff
2007-07-24 14:58         ` Adam Beneschan
2007-07-25 10:05         ` Stephen Leake
2007-07-24 14:55       ` Adam Beneschan
2007-07-24 15:41         ` Markus E Leypold
2007-07-25 19:13           ` Randy Brukardt
2007-07-23 18:51 ` Georg Bauhaus
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox