var
  LocalDir : String;
begin
  GetDir(0,LocalDir);
  showmessage('当前路径是' + LocalDir);
end;

解决方案 »

  1.   


    (String):=ExtractFileDir(文件名)。
      

  2.   

    ExtractFilePath(Application.EXEName);
    这个也可以
      

  3.   

    另外,文件名可以用应用程序的参数获得,这是Delphi,我不是很熟悉,你自己应该知道吧。
      

  4.   

    以上许多语句的功能都相同吗?
    能在任何条件下获得当前运行的exe文件的完整路径吗?
    它们的性质没有差别吗?我看不一定,请见下面的分析,有问题请大家批评指正(我没有试过):
    1。
    GetDir(0,LocalDir)和GetCurrentDir得到的目录(当前目录)不一定是存放exe文件的路径,因为存放exe的目录是固定的,而当前目录在运行时可以转的;
    2。
    ExtractFileDir(文件名)是对一指定文件(本身有完整文件说明)提取其中的目录部分,此文件不一定就是正在执行的文件,而且在大多数情况下不会是的。例如各种软件的菜单中大都设置有一个File|Open操作,当Open成功时就会返回一个具有完整路径的filename,对此filename就可执行ExtractFileDir操作。当然,也可把它用于当前执行着的EXE文件,但这意味着你在程序中本身就要写好exe文件的完整路径了,这似乎不很合理。3。至于下面三句
    ExtractFilePath(Paramstr(0));
    ExtractFilePath(Application.EXEName);
    extractfiledir(application.exename)
    我想作用应是一致的,能得到当前运行的exe文件的完整路径。但我也想再提一个挖空心思的问题:如果启动时的原始程序中包含了一个调用其它执行程序的语句,且程序正转入这一程序时,利用上述三个语句将得到那一个执行文件的路径呢?
      

  5.   

    zzwu(未名) 提出问题,谁可以解决啊?
    给有高手试过?