comp.lang.ada
 help / color / mirror / Atom feed
From: "Grein, Christoph" <christoph.grein@eurocopter.com>
Subject: Re: How to find directory where the program is?
Date: Wed, 24 Apr 2002 11:44:58 +0200 (MET DST)
Date: 2002-04-24T11:44:58+02:00	[thread overview]
Message-ID: <mailman.1019642583.23538.comp.lang.ada@ada.eu.org> (raw)

Observation for Ada.Command_Line.Command_Name:
   Win98: Always the full path and extension are returned.
   WinNT: Only the name as entered on the command line is returned.
Thus we have to look for a portable way.
RM A.15(16) leaves the string completely implementation defined.
RM A.8.2(22) requires the full name to be returned.
Thanks to Randy Brukardt for this hint (a long time ago, about Jan 2001).
It may however not be possible to open the executable file with Text_IO.

  function Full_Name return String is
    -- Retrieve the full name via RM A.8.2(22).
    Command: String renames Ada.Command_Line.Command_Name;
    use Ada.Text_IO;
    Executable: File_Type;
  begin
    if Extension (Command) = "" then
      Open (Executable, In_File, Command & ".exe");
    else
      Open (Executable, In_File, Command);
    end if;
    declare
      Full_Name: String renames Name (Executable);
    begin
      Close (Executable);
      return Full_Name;
    end;
  exception
    when Name_Error =>  -- file not found
      return "";        -- set error condition
  end Full_Name;



             reply	other threads:[~2002-04-24  9:44 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-04-24  9:44 Grein, Christoph [this message]
2002-04-25 10:35 ` How to find directory where the program is? Thierry Lelegard
2002-04-25 19:30   ` Philippe Waroquiers
2002-04-25 22:57     ` Larry Kilgallen
  -- strict thread matches above, loose matches on Subject: below --
2002-04-25 16:43 Beard, Frank [Contractor]
2002-04-23 23:28 Beard, Frank [Contractor]
2002-04-24  0:49 ` Larry Kilgallen
2002-04-24  2:31   ` achrist
2002-04-24 10:29     ` Preben Randhol
2002-04-24 15:28       ` Darren New
2002-04-24 17:43         ` Preben Randhol
2002-04-24 18:33           ` Randy Brukardt
2002-04-24 21:00             ` Wes Groleau
2002-04-25 19:26               ` Randy Brukardt
2002-04-25  2:37             ` Steve Doiel
2002-04-25  7:26               ` Preben Randhol
2002-04-23 19:56 Beard, Frank [Contractor]
2002-04-23 22:41 ` Larry Kilgallen
2002-04-23 19:24 Beard, Frank [Contractor]
2002-04-23 18:28 Preben Randhol
2002-04-23 19:10 ` Florian Weimer
2002-04-23 19:37 ` Randy Brukardt
2002-04-23 20:53   ` Preben Randhol
2002-04-23 21:04 ` Joachim Schr�er
2002-04-24  8:35 ` Thierry Lelegard
2002-04-24  8:43 ` Jean-Pierre Rosen
2002-04-24 10:33   ` Preben Randhol
2002-04-24 11:43     ` Jean-Pierre Rosen
2002-04-24 14:44       ` Preben Randhol
2002-04-24 15:38 ` Hyman Rosen
2002-04-24 17:44   ` Preben Randhol
2002-04-24 23:08   ` Nick Roberts
2002-04-25  7:28     ` Preben Randhol
2002-04-25 14:18       ` Marin David Condic
2002-04-26 16:24         ` Stephen Leake
2002-04-26 20:41           ` achrist
2002-04-26 21:31           ` Larry Kilgallen
2002-04-29 15:38           ` Marin David Condic
2002-04-25 17:10       ` Sergey Koshcheyev
2002-04-25 21:11         ` Nick Roberts
2002-04-25 23:28           ` Sergey Koshcheyev
2002-04-26  5:57             ` Preben Randhol
2002-04-26 16:22           ` Stephen Leake
2002-04-26 17:13         ` Anders Gidenstam
2002-04-26 12:18       ` Jacob Sparre Andersen
2002-04-26 12:23         ` Preben Randhol
2002-04-26 12:48           ` David C. Hoos
2002-04-26 14:13             ` Preben Randhol
2002-04-27  8:18               ` Eric G. Miller
2002-04-26 13:09         ` Marin David Condic
2002-04-27 14:39           ` Larry Kilgallen
2002-04-27 21:12             ` Nick Roberts
2002-04-29 15:52             ` Marin David Condic
2002-04-24 17:44 ` Egil Harald Hoevik
replies disabled

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