From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,b97aa4480eccc494 X-Google-Attributes: gid103376,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!postnews.google.com!z24g2000prh.googlegroups.com!not-for-mail From: Adam Beneschan Newsgroups: comp.lang.ada Subject: Re: How to get the application path Date: Mon, 23 Jul 2007 08:27:39 -0700 Organization: http://groups.google.com Message-ID: <1185204459.328520.240930@z24g2000prh.googlegroups.com> References: <46a456aa$0$25908$426a34cc@news.free.fr> NNTP-Posting-Host: 66.126.103.122 Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Trace: posting.google.com 1185204459 16239 127.0.0.1 (23 Jul 2007 15:27:39 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Mon, 23 Jul 2007 15:27:39 +0000 (UTC) In-Reply-To: User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.7.12) Gecko/20050922 Fedora/1.7.12-1.3.1,gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: z24g2000prh.googlegroups.com; posting-host=66.126.103.122; posting-account=ps2QrAMAAAA6_jCuRt2JEIpn5Otqf_w0 Xref: g2news1.google.com comp.lang.ada:16555 Date: 2007-07-23T08:27:39-07:00 List-Id: On Jul 23, 5:34 am, Stephen Leake wrote: > Rangdalf 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 I really have to question this. I tried it using GNAT on Linux, and (as I expected) Command_Name simply returns whatever was the first token I entered on the shell command line---i.e. argv[0] (which is what the Ada 95 manual hints that Command_Name should return). Maybe things are different on Windows, but the original poster didn't refer to any particular operating system. ; that is the application > path. > > There may be a better solution in Ada 2005. 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, if the default directory hasn't been changed with Ada.Directories.Set_Directory. To extract just the directory name, without the base name, Ada.Directories.Containing_Directory (Ada.Directories.Full_Name (Ada.Command_Line.Command_Name)) should work. -- Adam